home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Archive Magazine CD 1995
/
Archive Magazine CD 1995.iso
/
text
/
magazine
/
volume_05
/
issue_09
< prev
next >
Wrap
Text File
|
1995-06-25
|
206KB
|
4,577 lines
Tomorrow’s Worlds
5.9
The title comes from a fascinating article in Mac User, (1st May 1992)
which explains how Apple are planning to “harness the power of RISC”.
They are intending to use a “modular approach” to their system program
ming using this “new” computer architecture. I couldn’t help a wry smile
as I thought back almost five years (yes, five years) to that seminar at
the Acorn Training Centre when the first RISC-based computer was
revealed and they told us about things called relocatable modules that
are designed so that “the system software will be modular and
extensible”. (In fact, that last quote was pinched from the Mac User
article!)
5.9
Actually, the laugh is going to be on us if we are not careful. The
article goes on to describe the huge range of power systems that Apple
are intending to deliver over the next few years. If a company as small
as Acorn can deliver machines as cheap and powerful as the A5000 with
their limited resources, think what Apple could do with their massive
network of engineers and developers. Still, there is one thing that will
slow them up quite considerably − “Apple has had to bite the bullet and
move to high-performance RISC technology even though it is incompatible
with current Motorola 680X0 CISC devices.” In order to maintain
backwards compatibility with the huge installed base of 680X0 machines,
they will have to develop 680X0 emulators to run existing software.
Then, because of the speed limitations of the emulators, they will have
to rewrite all the applications software to run in native mode on the
new RISC machines.
5.9
If reports in the June Archimedes World are to be believed, Acorn are
about to launch “a number of new computers later this year”. They speak
of the portable (a huge hole in Acorn’s range) and a couple of A3000
replacements, one aimed at the home market and one aimed at schools (but
no mention of a high end VIDC 2 machine). Well, I hope AW is right
because, although we have a head start where RISC is concerned, I fear
that the Apple is rapidly gaining on us.
5.9
Come on, Acorn, you can do it! and we will support you in every way we
can!!
5.9
Bye for now,
5.9
5.9
Products Available
5.9
• A5000 drives − If you prefer to keep your podule slots free and want a
second large hard drive for your A5000, as well as the 120M drive at
£380, we now have a 240M drive at £675 and a 420M drive at £1150. These
can be fitted in the space underneath the floppy drive.
5.9
• A5000 2M memory upgrades − Atomwide now have a non-expandable 2M
upgrade for the A5000 at £89 +VAT (or £100 through Archive). It is
vertical mounting and is therefore easier to fit than the expandable 2M
upgrade (£130 through Archive) since you don’t have to remove the floppy
drive and hard drive.
5.9
• !BBCLink − Turing Tools have produced a “pre-compiling link editor”
for BBC Basic. The idea is that Basic compilers normally do not
recognise the LIBRARY function, so BBCLink enables you to call routines
that are not in the actual code to be compiled, just as long as the
routines exist in other sources referred to within the file. This brings
the idea of object-oriented programming within reach of the Basic
programmer. !BBCLink is £39 for a single user, £229 for a commercial
site licence, £189 for an educational site licence and there is a demo
version for £5, refundable on purchase of the full version. (There is no
VAT as Turing is not VAT registered.)
5.9
• BirdTech scanning and printing − The phone number we gave last month
for BirdTech’s scanning and printing service was wrong. With apologies,
it should have been 0263−70669.
5.9
• Careware 17 should be ready by the time this magazine goes to press,
possibly even 18 as well. See the Price List for details.
5.9
• CD-ROM upgrade for Acorn SCSI cards − Acorn have released an upgrade
to enable their SCSI cards to be used to run CD-ROMs. The software is
the same for both versions of the Acorn SCSI card but for owners of the
earlier AKA30 cards, there is a simple board modification to be made.
The AKA31 has a link change instead. The price of the software and
instructions is £19.95 +VAT or £22 through Archive.
5.9
• Design Concept’s fonts − Design Concept are continuing to increase
their list of outline fonts. The latest additions are Chinese and Katiyo
− both English characters but the former in a Chinese style. (See page
63 for a review of some the earlier fonts and programs.) For a free
catalogue, write to Design Concept.
5.9
• Direct Laser Printers − Calligraph now have a wide range of direct
drive laser printers (i.e. the same sort of thing as the Laser Directs).
Bottom of the range is a Qume (300 d.p.i., 6 p.p.m.) at £899 + VAT
(Archive price £990). Then there is a 600 × 300 d.p.i., 4 p.p.m. Canon
at £969 + VAT (Archive price £1080). This is the equivalent of the
Computer Concepts’ Laser Direct LBP4 except that the CC version goes up
to 600 × 600, not just 600 × 300 d.p.i. The next one up is the equiva
lent of CC’s LBP8 − ArcLaser 600-8 is a Canon 8 p.p.m. printer offering
600 × 400 d.p.i. for £1399 +VAT (Archive price £1560). If you are
looking for an even faster printer with a dual bin facility then the new
ArcLaser 600-12 is a Qume laser printer offering 600 × 300 d.p.i. at 12
p.p.m. (Archive price £1560).
5.9
Calligraph also have a cheap laser printer with a deep paper tray that
is ideal for network use − ArcServer is a 300 d.p.i., 8 p.p.m. Taxan
printer and comes complete with network spooler software for £1069 + VAT
(Archive price £1180).
5.9
• DrawPrint & Plot is Oak Solutions’ updated version of their WorraPlot
ter. DrawPrint is a tiling program for outputting Drawfiles in sizes up
to A0 on A4 sheets. DrawPlot is a RISC-OS driver for HPGL plotters. The
files it produces can be transferred to PC format discs and sent to
cutting or plotting bureaux for the final product to be produced. The
price is £39.95 +VAT or £43 through Archive.
5.9
• Eizo 17“ monitors − I have now had several hours of practical
experience of using the various Eizo 17” monitors. The newest one I have
been looking at is the T560iT which is a higher spec version of the
T560i. It has an anti-reflective coating on the screen and has achieved
the MPR II standard. It also has lower electrostatic emission character
istics so that it complies with the more stringent Swedish TCO
regulations. It is, therefore, more expensive than the T560i − £1360 at
Archive prices compared with £1240, so is it worth paying £120 for the
extra “T” ?!
5.9
The advantage of the anti-reflective coating is that you won’t find
yourself having to angle the monitor to avoid reflections from strip-
lights or other strong light sources. If you are definitely always going
to be working in a low ambient light level, then the only advantage
would be the higher safety standards. However, being realistic, most of
us will, on occasions, find ourselves with some sort of bright light
causing reflections. I would say that if you can justify paying £1240
for a monitor, it would be false economy not to stretch the extra £120
for the T560iT at £1360.
5.9
So, how does the T560iT compare with the F550i? Is it worth the extra
£470? (£1360 − £890) First of all, I must say that the F550i is an
excellent monitor and anyone moving up from a 14“ monitor of any type
will see a significant improvement. With all three 17” monitors, the
micro-processor control makes them so much more user-friendly. They can
be set up in each of the modes you use to give the optimum display using
every last millimetre of the screen (except in modes 12 & 15 which are
half height and three-quarters width, though none the less very usable).
5.9
What then do you get for the extra £470? The first advantage of the
T560iT’s Trinitron tube is that you get a brighter screen. I found I had
to run the F550i at full brightness all the time and when the sun was
bright (in England, in May?!?!) I really could have done with a bit more
brightness. This is particularly noticeable with Impression because it
uses a white background. The problem with the F550 is that, if you try
to make the whole screen white, it really cannot cope and it goes a
little grey. To see this effect, create a new blank document and
increase the magnification to give you a complete white screen. Size it
down to a couple of inches square, put the pointer over the top right
hand corner of the window ready to open it out to full screen size and
cover the rest of the screen with a couple of A4 envelopes. Watch the
square of white in the top lefthand corner of the screen as you click
the mouse to open the window to full size and you will see the drop in
brightness. I also tried this with the Trinitron tube and couldn’t see
any change in brightness.
5.9
The other difference between the two tubes is the colour saturation.
This is clearly seen if you put up, say, the test card from Atomwide’s
VIDC modes disc. (You will need this disc or a VIDC enhancer to use any
of these monitors.) If you have two computers and can put the two
monitors side by side, you will see a definite difference in the
intensity of the colours. The F550 colours are more pastel, if that’s
the right word.
5.9
In defence of the F550i which, as I have said, is an excellent monitor
at £890, I have always found the non-Trinitron tubes less tiring to use
than the Trinitrons (well, the Taxan 795 which is the only Trintron I
had tried prior to the T560i). This could well be because the display is
not as bright or colourful and is therefore more restful. Also, the
Trinitron tubes do have a couple of dark shadow lines across the screen
which would never be seen on a television with a constantly moving
display but, with a steady white background, these dark lines can be
clearly seen. Having said that, the lines are a lot less obvious on the
larger tubes than on the 14“ ones and, in use, I haven’t found the
T560iT at all tiring to use. Because I use it all day, every day, I
think I can justify the extra cost and will be sticking with the T560iT.
5.9
• Epson emulation − We have managed to find an Epson emulation for the
Acorn JP150 printer. The cost is £98 through Archive. It means that any
recalcitrant software that insists on printing to an Epson printer can
be used with the Acorn JP150 printer. This is likely to be particularly
useful with the PC Emulator.
5.9
• Flopticals’ price down − Just after the last magazine went to the
printers, Morley dropped the prices of their floptical drives. The new
Archive prices are as follows: 20M external £490, 20M external + podule
£580, 20M external + cached podule £630, 20M internal floptical drive
£400, 20M internal + podule £490, 20M internal + cached podule £540. The
20M discs are £29 each or five for £115 (= £23 each). Note that, at
present, the Morley podules are the only SCSI podules that will support
the floptical drives. Also, currently, the drives will not read any of
the Acorn formats, only 720k and 1.44M MS-DOS formats.
5.9
• Keynote is the primary version of the KeyPlus database, aimed at
children at Key Stages 1 & 2. It is produced by the education department
at Anglia Television and costs £27.50 +VAT for an individual copy with
site licences between £30 and £250 depending on the size of the
establishment from <150 pupil primary schools to FE and HE colleges.
5.9
• KiddiCAD − Oak Solutions have a 3-D building block program − a bit
like building with Lego but in 3-D. The object can be viewed from any
position and any angle. You can build blocks into sub-assemblies, save
them and then use them to build up an even bigger model. Views of the
models can be printed with standard RISC-OS printer drivers. (£69.95
+VAT or £76 through Archive.)
5.9
• Le Monde à Moi − This is a skills development package designed to
stimulate spoken and written French in children from 9 years upwards.
Based on a set of pictorial scenes, there is a range of sorting,
matching and sentence construction tasks that can be done. The price is
£15 +VAT from Northwest SEMERC.
5.9
• Graph_IT is Sherston Software’s graph drawing software aimed specifi
cally at schools. “It has been designed to produce professional looking
graphs quickly, accurately and easily, without having to master a
complicated spreadsheet or database package.” The graphs can be saved as
Graph_IT files or as Draw files, so that the output can be used with
other WP or DTP packages. The price is £19.95 +VAT from Sherston
Software and this includes three fonts: Junior, Montclair and Tabloid.
5.9
• Italian disc magazine − Raffaele Ferrigno tells us that there is now a
disc-based Archimedes magazine in Italy. Apparently it is bimonthly and
it is free! More details from Raffaele Ferrigno at Via Andrea d’Isernia
16, 80122 Napoli, Italy.
5.9
• Nº62 Honeypot Lane is a new program from Resource aimed at primary
school work in a whole range of subjects. It is based round the idea of
exploring and discovering the routines and relationships that exist
within a household through a year. The price is £29.95 for a single user
and £74.95 for a site licence.
5.9
• Pesky Muskrats − This new game from Coin-Age Ltd bears certain
resemblances, in the basic game strategy at least, to Lemmings. The
difference is that you are trying to kill all the Pesky Muskrats instead
of saving them. The price is £25.99 or £24 through Archive.
5.9
• ScreenTurtle is Topologika’s easy-to-learn turtle graphics program. It
is a fully RISC-OS compatible program and offers a range of Logo
features but always with the aim of making it accessible for the younger
users − aimed at 8 to 13+ year olds. The price is £39.95 + VAT or £44
through Archive.
5.9
• Shareware 44 − “Fortran Friends”, compiled by D.J. and K.M. Crennell,
contains: a desktop tool allowing compilation, linking and execution;
fast binary input/output, callable from Fortran; thirty-three graphics
routines emulating Basic commands, e.g. CALL LINE(IX1,IY1,IX2,IY2);
forty-four Sprite_Op routines; eleven utilities, e.g. J = IGET() which
simulates Basic’s GET command; a general SWI calling routine; fifty-one
wimp routines + some utilities; utilities to create Draw files for
‘path’ and ‘text’ objects; utilities to plot a line graph through a set
of X,Y points; various algorithms, originally part of the ACMToms;
Fortran applications − using SpriteOps for manipulation of objects made
of spheres, using wimp routines to display polyhedra from pre-stored
datafiles; advice for converting a Basic program to Fortran; list of
reported bugs in Fortran77 release 2; list of commercial suppliers of
libraries callable from Fortran; list of bulletin boards accessible from
JANET.
5.9
• Shareware 45 − contains: typing tutor, address book and label printer,
easy-to-read font for children, modes 20 & 21 for Acorn multisyncs, Draw
options object killer, menu screen grabber, sprite & draw file
previewer, clipart including: Body − brain, eyeball, eyes, germ, hand,
inner ear, nervous system, skin1, skin2, skull/brain; chemical equip
ment: beaker, bunsen, distillation, conical flask, separation funnel;
General: blast furnace, tap; Pond: beetle, pike; Transport: glider,
lorry1, lorry2, plane.
5.9
• Shareware 46 − contains: Basic compressor & cross referencer, module
information utility, regular expression finder (for cross referencing),
File/directory lister for RISC-OS and PC partitions, simple assembler,
desktop ‘filer’ utility.
5.9
• Shareware 47 − contains: desktop keystrip, selective disc backup, a
utility to make ‘plinth’ sprites, (another different) typing tutor,
desktop eyes, orbital mechanics simulation, four dimensional cube
display, three games: !Bang − desktop bomb squad, Inertia screen
designer and !Zoo − a guessing game / expert system.
5.9
• Squirrel update − Digital Services have produced a new version of
their Squirrel database. Version 1.10 has a huge range of new features −
I have a list of features 2½ pages long which I do not intend to try to
summarise! All registered Squirrel owners will get their upgrades free
of charge and the end user price has not changed − still £140 through
Archive.
5.9
• The Crystal Rain Forest − Sherston Software have produced a new
educational adventure game. The scenario is that you have to help the
King of Oglo who has been poisoned by some evil tree-fellers. To save
him, you have to find some magic crystals hidden deep in the forest. The
adventure is intended to be both a starting point for conservation and
nature work and also a fun way to teach children how to use Logo. All
the puzzles encountered are related to Logo and are presented in a
structured manner so that pupils learn about Logo almost without
realising it − well, that’s what Sherston claim! The price is £35 +VAT
from Sherston Software.
5.9
• The Public Key − Issue 3 of The Public Key is now available. This is
the magazine specialising in public key cryptography. For more details,
see the advert on page 10.
5.9
• Vector − 4Mation’s new drawing package, Vector, is now available at
£85 +VAT (£92 through Archive). Written by Jonathan Marten (of DrawPlus
fame), it has a range of new features including replication of images,
masking of objects (so that parts of one object will “show through”
another object), radiation (replication + rotation), path-merging,
interpolation, new path patterns, etc, etc. (See comparative review on
page 13 − but a full review will follow as soon as it is ready.) A demo
version of Vector is included on the monthly program disc.
5.9
• X-fire − yet another all-singing, all-dancing, shoot-em-up arcade game
from 4th Dimension. The price is £24.95 or £23 through Archive.
5.9
Review software received...
5.9
We have received review copies of the following: Aliped, Careware 17,
Careware 18, Control Logo (needs Longman Logotron Logo), Diction,
Keynote, Disc Rescue, Newton (needs Longman Logotron Logo), Nº62
Honeypot Lane, Pesky Murkrats, ScreenTurtle, Shareware 44, Shareware 45,
Shareware 46, Shareware 47, Supermarket (English, French, German &
Spanish), X-Fire. A
5.9
5.9
Government Health Warning − Reading this could seriously affect your
spiritual health.
5.9
Let me start with an interesting statistic − ten out of every ten people
are going to die. (Sharp intake of breath... “He’s not going to talk
about death, is he?”) It’s funny, isn’t it, that in the U.K. today one
thing you are not supposed to talk about, except in hushed tones when
someone “passes on”, is death.
5.9
Why shouldn’t we talk about death? Are we afraid of it? Do we think that
if we avoid talking about it, it won’t happen? The bible isn’t afraid to
talk about death − the word “death” appears 127 times, “die” comes 42
times and “dead” comes 146 times − and that’s just the New Testament.
5.9
Well, is it the suffering that is often associated with death that gags
us? Why should it be? Often, dying can be relatively painless − or so I
gather! It’s living that’s really painful! There is a tremendous amount
of physical and mental suffering that is not directly associated with
death.
5.9
Let’s face it, I don’t really know why we are afraid to talk about death
but one thing I do know is that, for bible-believing Christians, there
is no fear in death. Such joy awaits us − the joy of knowing God 100%
and experiencing His love in full measure − that death is, dare I say
it, something to which we actually look forward. I don’t much fancy the
process of dying but when I’ve gone through it, it’s going to be
absolute heaven!
5.9
5.9
Norwich Computer Services 96a Vauxhall Street, Norwich, NR2 2SD. 0603-
766592 (764011)
5.9
5.9
4th Dimension P.O. Box 4444, Sheffield. (0742−700661) (0742−781091)
5.9
4Mation 11 Castle Park Road, Whiddon Valley, Barnstaple, Devon EX32
8PA. (0271−25353) (0271−22974)
5.9
Abacus Training 29 Okus Grove, Upper Stratton, Swindon, Wilts SN2
6QA.
5.9
Acorn Computers Ltd Fulbourn
Road, Cherry Hinton, Cambridge CB1 4JN. (0223−245200) (0223−210685)
5.9
Apricote Studios (p11) 2 Purls
Bridge Farm, Manea, Cambridgeshire PE15 0ND. (035−478−432)
5.9
BirdTech 16 Weynor Gardens, Kelling, Holt, Norfolk NR25 7EQ.
(0263−70669)
5.9
Calligraph Ltd 53 Panton Street, Cambridge CB2 1HL. (0223−461143)
(0223−316144)
5.9
Cliff Kohlmeyer (p5) Coyfes,
Station Road, Groombridge, East Sussex TN3 9NB. (0892−864357)
5.9
Coin-Age Ltd 23 Cooper Street, Nelson, Lancashire BB9 7XW.
5.9
Colton Software (p28) 2 Signet
Court, Swanns Road, Cambridge CB5 8LA. (0223−311881) (0223−312010)
5.9
Computer Concepts (p32/33) Gaddesden
Place, Hemel Hempstead, Herts HP2 6EX. (0442−63933) (0442−231632)
5.9
Data Store 6 Chatterton Road, Bromley, Kent. (081−460−8991)
(081−313−0400)
5.9
Design Concept 30 South Oswald Road, Edinburgh EH9 2HG.
5.9
Digital Services 9 Wayte Street, Cosham, Portsmouth PO6 3BS.
(0705−210600) (210705)
5.9
ICS (Ian Copestake Software) (p12) 1 Kington
Road, West Kirby, Wirral L48 5ET. (051−625−1006) (051−625−1007)
5.9
LOOKsystems (p19) 47 Goodhale Road, Bowthorpe, Norwich NR5 9AY.
(0603−764114) (0603−764011)
5.9
Morley Electronics Morley
House, Norham Road, North Shields, Tyne & Wear NE29 7TY. (091−257−6355)
(6373)
5.9
Northwest SEMERC Fitton Hill CDC, Rosary Road, Oldham OL8 2QE.
(061−627−4469)
5.9
Oak Solutions (p20) Suite 25,
Robin Enterprise Centre, Leeds Road, Idle, Yorkshire BD10 9TE.
(0274−620423) (0274−620419)
5.9
Ray Maidstone 421 Sprowston Road, Norwich NR3 4EH. (0603−400477)
(0603−417447)
5.9
Resource Exeter Road, Doncaster DN2 4PY. (0302−340331)
5.9
Risc Developments Ltd 117 Hatfield
Road, St Albans, Herts AL1 4JS. (0727−40303) (0727−60263)
5.9
Sherston Software Swan Barton,
Sherston, Malmesbury, Wilts. SN16 0LH. (0666−840433) (840048)
5.9
Simis Ltd Headley House, Headley Road, Grayshott, Surrey GU26 6TU.
(0428−605833) (607791)
5.9
Spacetech (p6) 21 West Wools, Portland, Dorset DT5 2EA.
(0305−822753)
5.9
Topologika P.O. Box 39, Stilton, Peterborough PE7 3RL. (0733−244682)
5.9
Turing Tools 149 Campbell Road, Cowley, Oxford OX4 3NX. (0865−775059)
5.9
Techsoft Ltd (pp19 + 51) Old School
Lane, Erryrs, Mold, Clwyd CH7 4DA. (082−43318)
5.9
5.9
5.9
Computer Concepts
5.9
New artwork
5.9
5.9
Computer Concepts
5.9
New artwork
5.9
5.9
Paul B
5.9
5.9
Need a Hard Disk Drive for your Archimedes?
5.9
Want to spend up to 30% less than almost anywhere else?
5.9
5.9
Then call me!
5.9
Here are some examples:
5.9
IDE SCSI
5.9
42MB £220 £250
5.9
80MB 270 270
5.9
130MB 310 315
5.9
213MB 455 499
5.9
5.9
All sizes available. Prices vary from time to time. Simply phone or
write to us with your requirements, and we will respond that same day
with a quote. We can also get MFM format drives for the A400 series.
5.9
Cliff Kohlmeyer, Coyfes, Station Road,
5.9
Groombridge, East Sussex TN3 9NB
5.9
0892 864357
5.9
Visa & Access accepted
5.9
5.9
SpaceTech
5.9
From 5.8 page 45
5.9
5.9
Comment Column
5.9
• ... by any other name − Humble apologies to Richard Gates of Reepham
High School, Norfolk who wrote the article last month about Networking
the School. I unintentionally re-Christened him as Geoff. Sorry about
that!
5.9
• DTP response − I thought that readers might be interested to know how
much response we have had, so far, to our adverts in various Acorn
magazines, offering a free DTP booklet. Here is the “Top Ten” chart:
5.9
Acorn User 163
5.9
Micro User 131
5.9
Archimedes World 128
5.9
Beebug 88
5.9
Risc User 37
5.9
Educational Computing 21
5.9
We have also taken out an advert in the June issue of Mac World! It will
be interesting to see how much response we get from that.
5.9
• PC Compatibility − Here are just a few more pieces of PC software that
will run on the PC Emulator.
5.9
Software Dos Remarks
5.9
Borland C++ V2.0 3.3 V. slow
5.9
Chiwriter V3.02 3.3 Slowish
5.9
D86 V3.22 debugger 3.3
5.9
Paradox V3.5 3.3 No mouse
5.9
Quattro-pro V3.0 3.3 Slow
5.9
Turbo Assembler V1.5 3.3
5.9
Turbo Debugger V1.0 3.3 No
mouse
5.9
Turbo Pascal V5.5 3.3 No mouse
5.9
Mike Clinch
5.9
• PD TeX − The public domain TeX program is freely available via
Internet file transfer from the following site:
5.9
phoibos.cs.kun.nl address 131.174.81.1,
5.9
and via JANET from the Newcastle Info-Server (which also has hundreds of
PD programs for the Archimedes, with a lot of serious and good software,
plus demos and sounds) it has the following Janet address:
5.9
INFO-ADMIN@UK.AC.NEWCASTLE
5.9
To obtain an Index of all Archimedes software send a mail message with
the following content:
5.9
line limit 1000
5.9
request: sources
5.9
topic: archimedes index
5.9
request: end
5.9
This will then send the index to your Janet mailbox. I do not know
whether you can download files via local BT PADs as I do not possess the
equipment to try!
5.9
It should be noted that TeX requires at least 10M of hard disc and 2
megs of memory! Readers may also like to know that I have a copy of the
Archimedes port of MINIX, the program that is known as mini-unix. It is
Public Domain and was written by Martin Patzel, and is intended as a
starting block for budding code hackers, OS writers and Unix fans. It
would be an interesting challenge to continue the process and write a
fully functional OS. It should be noted that a PC already running MINIX
1.5.10 is needed for part of the unpacking process!! I also have a copy
of a PD version of UUCP, known as RUCP, and micro-Emacs that were found
on the info server (not D Pilling’s version). Richard Ingram, Horsham
5.9
• Sow much four spelling chequers! − Won knight sum phew daze a go,
being a try full board, icon clue dead the tit was thyme two sea watt a
spelling chequer wood do with an aviary day peace of righting. Eye sat
my sulphate my usual plaice at the key bored of my valley ant Acorn and
a sigh typed, I weighted in vein fore the yew till it tea too come
plane, butt knot a whirr did it take except shun to.
5.9
Aye no, of coarse, that a yam vary hard to pleas butt in too sheiks of a
lam stale I was shore that this was not rite four me. The hare on my
head stood up and I had quite a nasty tern when the lack of so fist
decay shun in such annexe pensive product was slayed bear. The real eyes
a shun that sow much cache had bean pay doubt to a choir a prod duct so
pour, maid me ring my hands. Know underwear in a recession!
5.9
Their is amoral two this storey as yew have know doubt already guest.
Bee knot sow shore yore chequer nose it all, in spy toff what the
cellars of the are tickle may have lead dew too be leave.
5.9
To bee fare though, a grate deal of prays is jew two pea pole a bull to
pro juice such works oh fart. Tony Stauber, Qatar, Arabian Gulf.
5.9
• Virtual Memory, Minix − (Some comments inspired by the letter on
Virtual Memory in last month’s Archive − 5.8 p13.) I did consider
writing a virtual store system for RISC-OS some time ago but gave up as
I didn’t have a sufficiently useful application. For general use, the
main problem I can see is that only interrupts in user mode can be
handled cleanly. Some system calls are passed addresses to parameter
areas and one must be certain those areas are in store − even OS_WriteS
could give trouble. The easiest and most useful general way of imple
menting virtual store that I can think of is to reimplement or put a
veneer around the Clib module so that C programs using only ANSI C
facilities could be paged. Direct calls to _kernel routines, or use of
RISC_OSLib facilities, would, I think, be difficult to handle in
general.
5.9
I will, however, be implementing virtual store for another project I
started recently. I’m porting Minix so it works within RISC-OS. Minix is
a small educational version of Unix by Andrew S. Tanenbaum and others
and is documented in his book ‘Operating Systems: Design and Implementa
tion’ published by Prentice-Hall (1987). Minix can be used freely for
educational purposes. Working slowly it’ll be a year before I release it
for general use. I’m hoping to do a fairly complete implementation
running under the desktop and well integrated with RISC-OS. Currently,
I’m planning that C compiling tasks will be handed over to RISC-OS but
if someone would like to take on the rather daunting project of porting
Gnu C++ then a complete free educational Minix system could be
produced.
5.9
David McQuillan, Wokingham.
5.9
(On the monthly program disc are some utilities which David supplied.
They come with source code and could help in putting a veneer round
calls to the C library functions.) A
5.9
5.9
Small Ads
5.9
(Small ads for Archimedes and related products are free for subscribers
but we reserve the right to publish all, part or none of the material
you send, as we think fit. i.e. some people don’t know what “small”
means and there are certain things, as you can imagine, that we would
not be prepared to advertise as a matter of principle. Sending small ads
(especially long ones!) on disc is helpful but not essential. Ed)
5.9
• A310, Acorn colour monitor IFEL 2M memory, MEMC1a, PC Emulator,
Euclid, some games & PD, £700. Phone 051−606−0289.
5.9
• A410, 4M, 5¼ disc interface, Archway 2, £700 o.n.o. Phone 0634−360650.
5.9
• Acorn DTP £55, PC Emulator 1.6 £45, CC ROM/RAM podule + 7 × 32k RAM +
battery backup £45, Graphic Writer £10. Phone Ken on 0460−54311.
5.9
• Arc-PCB Professional as new £200. Phone Steve Frost on 081−743−8000
ext 5844.
5.9
• Brainsoft multi-podule − sound/video digitiser & modem £75. Phone Mr C
Bailey on 0908−661980.
5.9
• CC Qume LaserDirect 6ppm printer complete £500. Marconi trackerball
new, boxed £20. Phone 081−993−2361.
5.9
• Computer Concepts’ ROM/RAM podule with battery-backup and InterWord
£25. Phone Michael on 081−508−8534 (after 7p.m.).
5.9
• Computer Concepts’ ROMs − InterChart £10, InterSheet £15, InterWord
£15 and SpellMaster £20. Also disc software: Genesis Plus £15. Phone Rob
Brown on 0737−832159 (eves).
5.9
• Cumana 3½“ drive with internal p.s.u., compatible with Archimedes, £45
as new. Phone 0536−724981.
5.9
• Rodime 210M drive unused, auto-parking, 18 ms, £350. Phone John
Woodhouse on 0928− 701222.
5.9
• Z88 with German keyboard, 128k RAM, 128k EPROM, 2 × 32k EPROM,
Centronics parallel cable, EPROM eraser £150 or 450DM. Phone Roland in
Germany on 541−683925.
5.9
Charity Sales − The following items are available for sale in aid of
charity. PLEASE do not just send money − ring us on 0603−766592 to check
if the items are still available. Thank you.
5.9
(If you have unwanted software or hardware for Archimedes computers you
could donate for charity, please send it in to the Archive office. If
you have larger items where post would be expensive, just send us
details of the item(s) and how the purchaser can get hold of them.)
5.9
J programming language + “Tangible Math” £20, C-Front £5, Insight £45,
Mah-Jong the Game £12, Corruption £5, Archimedes Masterfile II £10,
Alerion £4, all four Step-by-Step Archimedes training videos £28 (or £9
each), Screened printer data cable £2 per foot. A
5.9
5.9
Hints and Tips
5.9
• Auto-destruct! − There are applications, like Impression, that have an
auto-save facility. Auto-save is a very helpful facility and I use it
myself but, with Impression (and perhaps other applications), there is
an option to auto-save without prompt. In other words, every few
minutes, without you being able to stop it, it will save the current
document on top of the original document on disc. If you can’t already
see the danger of this, an anecdote might help...
5.9
Tord Eriksson sent an article (over 400k long including various draw
files) all the way from Sweden on a single floppy disc and there was no
space on the disc for a duplicate copy of the document. I loaded the
article and was playing around with it prior to editing it for the
magazine. I was trying to see if the text was all one story and so had
cut and pasted various bits when suddenly I got the message “The file
has just been saved”. Fortunately, I hadn’t actually deleted anything
important just prior to the auto-save, but it does go to show that you
should never send a file to someone else having left the preferences set
to auto-destruct, sorry, I mean auto-save. Ed.
5.9
• Compression − Contrary to the review of Compression in Archive 5.2
(page 57) it is possible to initiate cfs directory displays from script
files. This might prove useful for those who want to use cfs as the
default filing system and who want to automatically display the root
directory on switching on the Archimedes. The problem is that the line,
5.9
Filer_OpenDir CFS#SCSI::Work.$
5.9
will not work unless the CFSmodule is active and it is inadequate to
simply run the !CFS application before this line in the script file. The
trick is to set up a !Boot application (as always) and to use this
application’s !boot (or !run) file to load the CFSmodule and activate it
before calling the script file. Assuming the !CFS application is hidden
away on the hard disc in the directory $.Utils. Filehndlng, this can be
achieved using the following commands:
5.9
|Load CFS
5.9
RMEnsure CFSModule 1.10 RMLoad $.Utils.Filehndlng.!Cfs .CFSModule
5.9
RMEnsure CFSModule 1.10 Error CFSModule not loaded
5.9
5.9
|Initialise CFS and set the
5.9
|scratch dir for it to use
5.9
|in handling files
5.9
NewCFS SCSI:4
5.9
CFStemp SCSI::Work.$.!System
5.9
|The !cfs !boot file should be
5.9
| run to allow the correct icons
5.9
| to be “seen” by the system:
5.9
$.Utils.Filehndlng.!Cfs.!Boot
5.9
5.9
| run desktop, load applications
5.9
| and display root directory
5.9
Desktop -file <HardBoot$Dir> DeskBoot
5.9
The script file, in this case called DeskBoot, used to load the
applications and open the root directory should be something like this:
5.9
Run <r>!System
5.9
Run <r>!Scrap
5.9
Run <r>!FontsPlus
5.9
Run <us>!StickyBD
5.9
Run <um>!Alarm
5.9
Run <uf>!Dustbin
5.9
Filer_OpenDir CFS#SCSI::Work.$
5.9
The commands “*Newcfs” and “*CFStemp” are not documented in the
Compression manual but are explained in sufficient detail in the *Help
feature of the CFSmodule itself. (Type *help cfsmodule for a list of the
commands, then do a *help for each individual command for more details.)
5.9
There is an example !boot application on the monthly program disc. Rob
Wears, Birmingham.
5.9
• Speeding up SQuirreL − If, like me, you often have lengthy queries and
reports for the SQuirreL database to perform, you may have wondered why
it makes no difference at all when you drag the table in question onto a
RAM disc.
5.9
The reason for this is that SQuirreL makes extensive use of the !Scrap
application; if you copy this, too, to the RAM disc and double click on
it, the hard disc will be silent.
5.9
Just don’t forget to double click onto the version of !Scrap on your
hard disc when you remove the RAM disc!
5.9
Jochen Konietzko, Köln, Germany. A
5.9
5.9
Apricote
5.9
From 5.8 page 30
5.9
5.9
ICS
5.9
From 5.8 page 24
5.9
5.9
The Public Key
5.9
New Artwork
5.9
5.9
Draw Graphics De-luxe!
5.9
Tord Eriksson
5.9
There are few computers that have a bigger selection of graphics
software than the Archimedes. Today, the selection is so wide and
diversified that it is quite bewildering if you are trying to choose the
right software to meet your needs and fit your budget.
5.9
Pixel-based art packages, like !Paint, have their uses, especially for
on-screen graphics, but for the professional artist, it is vector-based
packages, like !Draw, that are essential.
5.9
This is even more so if you want to mix text with graphics or want to
manipulate text. In this “competition”, there are five teams assembled,
made up from programs that cost between £3 and £89 (+VAT) but all are
still very cheap compared to Mac software.
5.9
At the end of this test, I have made a few comments about some other
useful programs.
5.9
TypeStudio − Power at a price
5.9
Risc Developments have presented a program that rivals software from
Letraset or Adobe which cost more than twice as much (TypeStudio costs
around £40 from Risc Developments).
5.9
TypeStudio (version 1.06 tested) manipulates text in a number of ways,
some more useful than others, and includes some basic draw tools to make
paths and moulds for the text.
5.9
The manual is a delight to read, as usual with Risc Developments’
products, and using the program is very straightforward: First you make
a path or mould, then you type in the text and that is it!
5.9
The program is so simple to use that you really don’t have to be
literate because all the manipulation is done with icons and buttons.
5.9
Among the exotic ways you can transform text is the 3-D effect which is
very striking − I have not found this in the other packages.
5.9
On the other hand, there are no built-in features for setting text in a
circle − a quite useful feature. To do this with TypeStudio you have to
make a circular path or import one made with !Draw or some other
dedicated vector-graphics package.
5.9
Naturally, you can also manipulate other draw objects by putting them in
a mould.
5.9
Points for...
5.9
Used together with !DrawPlus, it is a very powerful and easy-to-use tool
for creating text wrapped round cylinders, poured into cones or slanted
backward. The limit is your imagination!
5.9
The manual is very helpful and the program is easy to master.
5.9
Seven very nice fonts are included in the package including Bookmark, a
Bookman look-alike and SwissB, Beebug’s version of Helvetica.
5.9
...and against
5.9
To my amazement, there are no keyshort cuts of any kind. No <ctrl-X> to
delete a selected object − as used by most RISC-OS packages! This is
rather annoying, to say the least.
5.9
I would have liked some more built-in draw tools − although this is not
essential, as you still need !Draw.
5.9
Imported paths and moulds sometimes refuse to work as such (happily,
“ungroup” solves most problems).
5.9
Poster − Power from New Zealand
5.9
As this program, from 4Mation, has been around for some time and is well
known to many readers, I will concentrate on the differences between
Poster and TypeStudio, as both manipulate text and draw objects. (Poster
costs around £80.)
5.9
No icons, no toolbox
5.9
In sharp contrast to TypeStudio, Poster uses no icons and there is no
toolbox on screen − nor are there any buttons to press. It is all done
by key short-cuts or menus and there are a lot of them!
5.9
The manual
5.9
Fortunately, all the short-cuts are printed on the back cover of the
manual − but in black on very dark blue paper. Not a very clever choice!
From two feet away, it is impossible read the text, even under good
lighting conditions. 4Mation, please, next time you print the manual,
why not use light blue, light green, yellow or even white on the cover?
Just a thought...
5.9
This manual is overwhelming − it uses every typographical trick in the
book and then some more. You will find inverse text, bold, bold-italic,
index numbers (inverse sometimes) in small circles, diagrams and
hundreds of illustrations and examples. In short, DTP Galore! Try not to
make your own work as crammed with features as this because it actually
makes reading and understanding more difficult.
5.9
Poster DTP
5.9
As Poster has some DTP functions, in addition to the text and draw
manipulation part, it can be used to produce magazines, booklets, etc.
5.9
You have menu options to create columns, change justification, line
spacing and you can change fonts globally. In short, it is possible to
do DTP!
5.9
Making a Poster
5.9
As the program’s name implies, it is at its best when making posters,
cards and stationery.
5.9
To this end, you have hundreds of fancy borders and eighteen fonts −
most of them so-called fancy fonts, not suitable for running text but
excellent for headlines and banners.
5.9
There are seventeen built-in print sizes, with variations, from A0 to
very small formats. They have even catered for US formats.
5.9
Manipulating objects and text with Poster takes some time to get used
to, as it is all done through menus but, when mastered, it is plain
sailing!
5.9
Points for...
5.9
Poster from 4Mation is a very powerful program with lots of features,
including some DTP functions. As with TypeStudio, you have to use !Draw,
or similar, to get the most out of it as it has no draw tools of its
own.
5.9
With Poster, it is easy to import and export moulds, paths and text.
After you have learned the 30+ keyshortcuts (including <ctrl-x>!) you
will have a very good program at an even better price!
5.9
There are 18 fonts included − some very neat.
5.9
...and against
5.9
The manual is a bit over-enthusiastic and the package is a bit pricey.
(However, it is good value for schools and colleges because the price
includes a site-licence.)
5.9
Low-cost opposition
5.9
Two programs, costing around £10 each, can rival TypeStudio and Poster.
The two are !FontFX (version 4.10) from Data Store Software and
DrawBender (version 1.01) from Ian Copestake.
5.9
Neither !FontFX nor DrawBender comes with a proper printed manual but
DrawBender comes with a leaflet and three fancy fonts.
5.9
FontFX − Version 4.10
5.9
This is a small utility from Data Store Software that can transform text
to draw objects and/or set them in circles; fast, easy and efficient.
So, you either get your text as a straight row of draw objects or in a
circular mode. As with TypeStudio and Poster, you can control the colour
of the outline and the fill and it is a perfect tool for making badges,
etc. With !Draw, you can easily modify the result to produce ovals
instead of circles. Sadly, the text then becomes a bit distorted.
5.9
DrawBender − Version 1.01
5.9
DrawBender is a moulding tool, from Ian Copestake, that can be used in
many different ways. The only restriction is that it can’t mould text
around the outside of circular objects easily as the mould needs to be a
continuous line. With TypeStudio and Poster, it is enough to stack two
slit-open circles on top of each other and make them into a can-shaped
mould (see below).
5.9
The mould to the left is for DrawBender and on the right is a typical
TypeStudio or Poster mould.
5.9
Setting up the moulds takes some practice but it is well worth the
effort. New moulds can be made with !DrawPlus, !Draw or similar
programs. Any box or circle can be made into a mould, by flipping it
over, as the path has to go towards the right (compared to !Draw’s
drawing habit).
5.9
To watch DrawBender in action is exciting: You can follow the moulding
of a bit of text (in draw format), or a transforming object, as it
happens.
5.9
Points for...
5.9
They are cheap.
5.9
There are outstanding features in both packages. !FontFX easily replaces
!DrawFont and FontDraw, plus adds a lot of new tricks. Neither Type
Studio nor Poster sets text in a circle as quickly or easily.
5.9
...and against
5.9
I would love to have a proper printed manual....
5.9
There are not enough features. For instance, there is no way with either
program to let text follow an arbitrary path, as you can with the
preceding two packages.
5.9
Vector − The victor?
5.9
Jonathan Marten’s (and 4Mation’s) drawing package, Vector, has just been
released. (The price is £85 +VAT or £92 through Archive.) This is
closely related to DrawPlus, Jonathan’s version of his !Draw update,
that Acorn didn’t want to distribute.
5.9
DrawPlus introduced libraries in which you could save your favourite
objects so that you can then use them again and again.
5.9
Vector will also enable you to use draw objects as masks that let the
background seep through. I can’t show this very well as the demo version
I am using is without save or print functions. (See screenshot below).
5.9
In many ways, Vector is the ideal complement to all the previous
packages. (We will try to fit the demo version onto the monthly program
disc.)
5.9
Points for...
5.9
All the things that made DrawPlus a success are part of Vector, plus
many new features such as a Mac-like toolbox and the excellent masking
function.
5.9
...and against
5.9
Price unknown. Refuses to load font names like:
Futura.Condensed.Extrabold.Oblique, i.e. names in four parts.
5.9
Pure Fontasy − The pathfinder
5.9
A powerful manipulator of text, much newer than Poster but not as new as
TypeStudio is Fontasy from Ian Copestake Software. (Costs around £25.)
5.9
It is simpler than either of the preceding packages, as it cannot mould
text, just distort it or let it follow paths. However, it is a very good
“pather”.
5.9
Manual
5.9
The manual is a simple affair of twenty pages, not even stapled
together. It is well written and you quickly get going in your manipu
lating efforts.
5.9
Operation
5.9
Using Fontasy is very easy and can be learnt in a couple of minutes. You
type in your text in a text-window, after having made your choice of
font and size. After a window has opened with the text in the right
font, you are ready to follow a path, if you want. This is done by
dragging a path into the window and the text will then follow it
automatically − very quick and easy.
5.9
This took less than two minutes from scratch with Fontasy and DrawPlus!
5.9
The way I did it was to use DrawPlus to make an undulating line, select
it, save it as selection and then drag the icon across directly to the
Fontasy window. Bingo! If you want to distort the text further you can
lean the characters, slope them, set them along an arc, make a circle or
whatever else you want to do.
5.9
This program does not use paths visible on screen and you cannot make
new paths, so DrawPlus, or similar, is an essential tool to be used
together with Fontasy − if only for viewing the ready-made paths!
5.9
Fontasy’s ability to produce several objects at the same time is worth
mentioning, plus the fact that you can alter the result without starting
again. You can move, re-size, rotate or reverse letters or groups of
letters individually.
5.9
Points for...
5.9
This is, in many ways, an improved FontFX that does anything you want,
except pure moulding. It has a very short learning curve and a well
written manual.
5.9
...and against
5.9
If you want to set text in circles, you are better off with !FontFX.
5.9
I would have liked to have a “see path” feature so that you could see
which path is the best for your need.
5.9
The manual is a bit flimsy and will not stand everyday wear and tear.
5.9
Chameleon − The Draw colourer
5.9
Until now it has been the colouring of draw objects that has been most
problematical. With !Trace (£5.99) and Midnight Tracer (£46) you could
convert your grey-scale sprites to draw objects but then you often ran
into trouble. (!Trace also handles colours easily!)
5.9
Chameleon (v. 2.00 tested), from 4Mation, changes all that. Suddenly, it
is your imagination that is the problem, not the draw objects in
themselves. It is a very easy-to-use package and I will show what it can
do by modifying a couple of the draw files used earlier in this article.
You can either use buttons or menus, to set which object or objects are
going to be affected by your manipulation.
5.9
The program comes in a thin wallet together with a short but, very
clear, manual − in colour!
5.9
The program is as good at using colour as it is at using grey-scales and
will improve any Archimedes user’s abilities.
5.9
Points for...
5.9
This is excellent software. It is easy to use and gives very nice
results and some unique effects.
5.9
...and against
5.9
It is rather expensive (£41) for what it does.
5.9
Conclusion
5.9
If you have a spare £100, you could do worse than to spend it on buying
most of the programs I’ve tested. Each and every one has its advantages
and weak points but if I had to write a priority list for a new
Archimedes owner, it would look something like this:
5.9
1. Vector − This is so much better than anything else available.
5.9
2. Chameleon − I will use this program a lot − it really delivers a new
dimension to vector graphics.
5.9
3. Any of the three main “moulding” contenders but I think that for a
“green” user, TypeStudio is the easiest to understand and use.
5.9
For those more experienced, I would warmly recommend Fontasy, together
with DrawBender. If you cannot afford that, buy DrawBender and !FontFX.
5.9
I take it for granted that you have DrawPlus. If not, get it from any of
a number of PD sources, including Archive (Careware 13) − or buy Vector!
5.9
Poster is the only program that pretends to be jack of all trades: a DTP
program, a “moulder” and a “pather” rolled into one. Without doubt, it
is the most powerful of them all but it is questionable whether it is
worth £89.
5.9
Instead of buying Poster, I would recommend Ovation (or Impression
Junior) plus DrawBender and FontFX. They would be slightly more
expensive but are much more powerful and they are proper DTP programs!
5.9
In addition, I think it is essential to buy a tracer (a program that
converts sprites to draw objects) and David Pilling’s !Trace is the best
and by far the cheapest!
5.9
(Poor PC and Mac users! − The power of graphics software is ever
increasing and we Archimedes fans still have a great advantage over PC
and Mac users; our software is generally much cheaper!)
5.9
Don’t forget Impression
5.9
Before finishing, I must stress that a lot of graphics manipulation can
be done with Impression II, as is very well explained in the little book
“Good Impression”. Highly recommended! (Available from Archive at £25.)
5.9
Addendum
5.9
A nice complement to DrawBender is OnePath (© Risc User) that makes one
path out of many. I used it to make the mould on one of the preceding
pages and used that for the illustration on this page.
5.9
For this review, I also received two printer utilities for “tiling”.
That is, they will print big draw files by dividing them up in smaller
pieces, in true poster fashion, using several sheets of paper if need
be.
5.9
The two are 4Mation’s !Drawprint and Ian Copestake’s Placard and they
seem to do similar jobs, although the latter is a far more complex piece
of software. I will test them in detail before passing any judgement on
them.
5.9
Also from Ian Copestake comes Special. This is a small utility in the
tradition of Acorn’s !Chars. It has two windows, one showing half of all
printable characters at a time, in any font and size while the other,
smaller, is a clipboard that contains those characters you use most
frequently. By using <adjust>, you can drag across those characters you
want to be within easy reach in the clipboard. They are easily deleted
with the help of a small menu.
5.9
When you have chosen the characters you want to have in the clipboard,
you close the bigger window and save the settings. After having renamed
the run file to !Boot (or made a copy called !Boot) you can save Special
to your Impression directory. Each time you open that directory, you
will have the little clipboard present.
5.9
It is a very nice utility and has already replaced my program, CharSel.
For me, it is essential to have the characters that are missing in a
Swedish keyboard. A Briton wishing to write to me could put “Ö” in the
clipboard (or use Alt-214).
5.9
The traditional method for twin language usage is to use the interna
tional keyboard and toggle between the default keyboard (usually
English) and your designated keyboard, in my case Swedish.
5.9
Thanks!
5.9
Many thanks for the help, directly or indirectly, and kind assistance
of: Ian Copestake, Risc Developments’ John Wallace and Mike Williams,
Neil Souch and Mike Matson of 4Mation, David Pilling, Jonathan Marten
and Paul Beverley, of course.
5.9
Anyone who wants to correct or discuss anything I’ve written or who has
tips on how better to use our machines as graphic tools, please, don’t
hesitate to write: Tord Eriksson, Övralidsg. 25, S-422 47 Hisings
Backa, Sweden, or phone (evenings): +46 31 58 16 76
5.9
All letters addressed to me will, eventually, be answered.
5.9
(P.S. There is no tracer, at any price, available for PC or Mac users
that can handle colour or grey-scales, not even the famous Freehand 3.0
manages it. David Pilling’s !Trace does just that for Archimedes users,
and costs £5.99, all inclusive!) A
5.9
5.9
TypeStudio, DrawBender, OnePath and Chameleon were used for this
“Wroooommm!!!”
5.9
5.9
Help!!!!
5.9
• Acorn multisync monitor (AKF18) − Has anyone done a VIDC enhancer
module for this for use with Atomwide’s VIDC enhancer? If so, is there
any chance of releasing it into the public domain? Please contact the
Archive office.
5.9
• Autosketch −> Draw − Does anyone have any experience/tips on importing
Autosketch files into Draw? The User Guide says that Draw will accept
them (DXF files) but I can’t seem to get Draw to recognise it as a DXF
file. Do I have to change the filetype? Phone Neil on 0283−734602 (day)
or 0283−813606 (6 p.m. onwards).
5.9
• Cross32 Meta Assembler review − One of our subscribers sent in a
review of Baildon Electronics’ Cross32 Meta Assembler − before
Christmas, I think. Unfortunately, I have no record of who it was and
don’t want to publish it without a name. I was hoping the reviewer would
contact me but so far he has not done so. If it was you, could you drop
me a line, please? Thanks. Ed
5.9
• “Sprite does not exist” − Has anyone had this error when printing via
a RISC-OS printer driver? If so, does anyone have a diagnosis or at
least a work-around to avoid it? If so, please contact the Archive
office, even if it is to provide us with information about when you
think it happens. It would be helpful to know things like, What
applications were you using? Which driver was it? Did the configuration
of the machine have any effect? Any information you can give us would be
much appreciated. A
5.9
5.9
Multi-media Column
5.9
Ian Lynch
5.9
The coming of low cost digital video has been long-awaited. Now it is
here in the form of Acorn’s !Replay and Apple’s Quicktime. What does the
future hold and how will Acorn fit in?
5.9
Why digital?
5.9
In theory, analogue systems are more accurate than digital simply
because every point of data on the signal is there. However, analogue
signals also carry any noise and distortion and the systems of transmis
sion often contribute to these undesirable effects. On the other hand,
digital systems have the advantage that noise can often be eliminated
and enough of the information in an analogue signal can be captured to
give more than satisfactory quality. Added to this, digital systems
storage media do not normally produce lower quality through wear
(compare a tape and record to a CD) and any serious wear simply makes
the system unuseable (e.g. a disc fault).
5.9
Video − a special case
5.9
In the case of digital video, the argument is not as straightforward
because it is difficult to get enough of the detail into digital format
and back onto the screen quickly enough for continuous moving pictures.
Digital video is definitely poorer in quality than a good VHS tape
(though I have seen plenty of VHS recordings which are worse quality
than Acorn’s !Replay) unless expensive specialist hardware is added to
the computer. This is not to say that the quality will not improve. I
expect it will and I would be surprised if by, the end of the decade,
digital systems on desktop computers are not a lot better quality than
current tapes. However, at present, we have to settle for the fact that
the “digital means better quality” adage is not true in this case.
5.9
The advantage of digital
5.9
Digital data does, however, have another significant advantage. It is
easier to manipulate, edit and add effects to digital files than it is
to try and alter analogue signals. It is also not too fussy about the
storage medium as long as there is a lot of it. There is generally more
compatibility between systems for manipulating digital data than there
is between analogue systems. Imagine going to the video shop and getting
a 3.5 in disc with Star Trek 12 in digital format, open a window on your
desk top and watch the movie while finishing that bit of DTP you needed
for work. Perhaps rather trivial, but likely to be possible before too
long.
5.9
More problems
5.9
Realistically, CD-ROM is the only sensible way to transfer significant
quantities of digital video between machines but it has the great
disadvantages of being very slow to transfer the data and being read-
only. In other words, getting data onto a CD is not a straightforward
matter and getting it off again can require the same patience as loading
a game from a cassette on a BBC B.
5.9
Syquest cartridge drives have become more popular but a 42 Mb cartridge
would only hold a few minutes of digital video and the cartridges are
much more expensive than CDs. Magneto-optical drives are looking more
promising with 3.5 inch discs of 120Mb and upwards. However, unless
compression techniques improve, discs are going to have to be capable of
storing a gigabyte of data if routine film distribution is to be
possible.
5.9
Compatibility and copyright
5.9
Once inexpensive means of storing digital video are available, and
assuming the reading and writing of discs is straightforward (CDs may be
popular with copyright holders for a while!) what is to stop broadcast
quality copies being made of all the films in the library? The answer is
nothing! − and so the problems of software piracy pale into insignifi
cance compared to video and audio fraud. The other problem, especially
for Acorn, will be film format. If all the films are in a standard
format, Acorn will have to support it and the chances are it will not be
!Replay (or perhaps any of the existing formats). It would be wrong to
make direct comparisons with the VHS/Betamax situation where technically
inferior VHS became the standard because analogue systems are far more
hardware dependent. If a future format was published, software could be
written on any machine to support it. It would even be possible to
translate between digital formats in the same way as !Translator and
!ChangeFSI, but whether or not this can be done without loss of quality
is doubtful.
5.9
Applications today
5.9
For the time being, !Replay works as well if not better than anything
else currently available and the main use seems to be in CD-ROM
applications which will include digital film clips as well as audio,
still pictures and text. This adds a new dimension to the idea of an
encyclopedia and there are bound to be new ideas for innovative uses of
the technology which may make playing simple video films redundant.
5.9
Any contributions about multi-media should be sent to Ian Lynch, 1
Melford, off Buckingham Road, Tamworth, Staffs B79 7UX. A
5.9
5.9
PD Column
5.9
David Holden
5.9
With the possible exception of the BBC computer which it replaced, the
Archimedes is the easiest computer I have ever tried to program. It has
a good built-in interpreted Basic with an incorporated assembler that
tempts the most unambitious programmer into trying the mysteries of
machine code. It has (in my opinion) the world’s most powerful and user-
friendly operating system which is fully documented and designed to have
its routines used by programs, even Basic programs. To own an Archimedes
and never write a program is like owning a Ferrari and employing a
chauffeur.
5.9
The ease with which it is possible to program the computer leads to a
large number of PD programs. Unfortunately, the fact that it is so easy
to write programs doesn’t necessarily mean that they are any good. In
fact, it is a tribute to the Archimedes that most of the stuff that I
see actually works, sometimes badly, sometimes well, and occasionally
brilliantly − which makes wading through all the different programs
worthwhile. If you think it strange that I should find this surprising,
I suggest you investigate Amiga, ST and PC Public Domain where, although
there are some wonderful programs available (mainly as Shareware), a
large proportion simply don’t function.
5.9
I often receive letters from people who have written or want to write PD
programs, asking for advice. The trouble is that they nearly always ask
the wrong questions. The most common are ‘how do you get ideas for
programs?’ and ‘how do you get them distributed?’. The answer to the
first is ‘either it was something I needed myself or someone else had
already done it badly’ and to the second is, ‘just send it to a few PD
libraries and if it’s any good, people will tell you’.
5.9
Of course, the questions and answers are really more complicated than
this but broken down to basics that’s about all there is to it. The
question that almost nobody asks is ‘How do I write a good program?’,
which is much more difficult. What I will try to do is to point out some
of the most common mistakes that I see (and have made myself) and some
of the things that a programmer can do to make his/her work useful to
the largest possible number of people. This month I will deal with only
one item but in my opinion it’s the most important of them all.
5.9
The most important item
5.9
I have found that as much as 90% of programs fail dismally in one main
area − documentation. It is very tempting to think that once you have
completed your masterpiece, the hard work is done but, in fact, writing
the program is normally the most enjoyable part of the exercise. There’s
an old saying ‘the job isn’t finished until the paperwork’s done’ and in
this case ‘paperwork’ means the User Instructions.
5.9
I have received more letters about the documentation of my programs than
anything else. I hope that those letters, many offering constructive
criticism, have helped me to improve my offerings and I would urge all
prospective programmers to learn from the mistakes that I have made.
They have certainly made me more conscious of my spelling since bad
spelling is one thing that someone will ALWAYS write to complain about.
5.9
In fact, I don’t wait until the end to write the instructions. When the
program begins to take shape, but before every detail is finished, I
start to write the manual. At first sight, this may sound a bit strange
since it might appear difficult to write instructions for parts of the
program that are not yet written, but it actually helps me to look at
the whole thing from a new perspective. If I can’t write clear, concise
instructions for the user then something about the design of the program
is probably wrong. Similarly, it forces me to examine the way the
program interacts with the user and to clarify in my own mind the way
the ‘front end’ will appear since this is often the last part to be
written.
5.9
What this illustrates is that the instructions are not just something
that you write as a chore when everything else is finished. They should
be an integral part of the programming process. The sensible programmer
writes the instructions as he writes the program, even if they are
simply a series of scribbled notes.
5.9
Clear instructions are also important because it is vital for the user
to know what should happen. When a program is first released, it will
almost always have some bugs. Often, these will not be found by the
programmer but soon appear when others try to use the program. If there
is no proper documentation, the user won’t know what is supposed to
happen and so will often just discard the program. If the instructions
are clear, he/she will probably take the trouble to write or phone to
ask ‘What am I doing wrong?’. Quite often this leads to the programmer
finding out that it’s the program, not the user, that is going wrong and
fixing it.
5.9
Don’t forget the obvious
5.9
The amount of documentation a program requires naturally depends upon
its complexity. Sometimes a few lines will suffice but sometimes you
need a 100 page manual. Whatever the requirements, there are certain
rules which must be followed.
5.9
The first mistake made by many people is to forget to say what the
program actually does. I have thrown away dozens of possibly useful
programs simply because this fact was omitted. It seems perfectly
obvious that the first thing any documentation should explain is the
purpose of the program but it is surprising how often this essential
piece of information gets left out. At one time I would examine the code
and try to work out what these programs did and then try to make them
work. Now I just consign them to the ‘reformat’ pile. Life is simply too
short to waste time on them.
5.9
Don’t be fooled into thinking that ‘help’ applications are a substitute
for proper instructions. These should be used in addition to documenta
tion and not as a substitute. If your program is even slightly
complicated, the user will want to print the instructions and retire to
an armchair to examine them at leisure and you can’t do it with Help
applications.
5.9
Of course, some programs don’t really need any instructions. It is easy
to think of several where the purpose and operation is self evident but
these are normally straightforward utilities.
5.9
The !Help file
5.9
The front line is the !Help file. Its purpose is to explain, in a few
words, what the program does and how to get it running. It might also
describe how to find the full operating instructions and how to print
them. The !Help file should be restricted to not more than 11 lines of
less than 59 characters. Why? Well, because that is the size of the text
window that will appear in which to display the text when you click on
‘Help’ and haven’t set up a Run Alias for text files (and a lot of new
users might not have discovered how to do this). You could argue that
everyone knows how to hold down <shift> and <ctrl> to stop the text
scrolling but why should they? It’s your job as programmer to make the
whole thing ‘idiot proof’ and so you should ensure that your !Help text
requires no more that simple ‘point and click’ knowledge to display it.
5.9
If you must use more than 11 lines then include a <ctrl-N> (VDU 14) code
at the start of the text to stop the window scrolling − and don’t forget
to put a line saying ‘Press SHIFT for more’ at the appropriate place in
the text.
5.9
If your program is complicated, it will require a proper manual. If this
is to be of real use to the user it must be written in the correct
format. The manuals accompanying PC Shareware programs are generally a
good guide to the correct methods to use but I shall describe my
experience with one of the less well-written ones as an example of some
of the worst mistakes that can be made.
5.9
How NOT to do it
5.9
A few weeks ago I sold my old 286 PC to a friend. Since he is a builder
who knows nothing about computers, I promised to load the hard disc with
lots of programs (Shareware and PD of course) which might be useful to
him and help him get started. I also decided to print out the manuals of
many of these simply because it would save him a lot of time. I began to
wade through my collection and installed the wordprocessors Galaxy and
New York Word (Galaxy is highly recommended and works acceptably fast
using the PC Emulator) and then I found Word Fugue. I de-archived it and
looked briefly at the documentation using a text editor. Then I gave the
program a try. It seemed an extremely powerful and user-friendly
wordprocessor and I couldn’t understand why I had overlooked it in the
past. However, when I tried to print the manual, I discovered the
reason.
5.9
The manual was written as a series of linked files in the wordprocessor
format. Although it was possible to examine them using a text editor, in
order to print them with proper page numbering, etc you need to use the
actual wordprocessor... but in order to use the wordprocessor you need a
manual! Now I am reasonably ‘computer literate’, so I was able to work
out how to do this but for a complete novice it could have been a
problem.
5.9
Then the fun started. Firstly, sections of text were in bold or
underlined. This was no problem for me because I was using an Epson
compatible printer and standard Epson codes were used, but what if I had
used a daisywheel or inkjet? Combined with the next problem this could
have been a major nuisance because the printer codes would have been
printed out as normal characters.
5.9
As soon as I started printing, the second problem manifested itself. The
text was a full 80 columns wide. A major mistake. When you print the
80th letter on an 80 column printer, it moves down to the next line. The
wordprocessor then sends a linefeed at the end of the line so the
printer moves down another line, leaving a blank line. This, in itself,
might not be a problem but what happens when you reach the bottom of the
page? The printer will be a line ‘out of step’ with the wordprocessor so
the text on the next page will start one line lower. Very soon text is
being printed right over the perforations and the headers are appearing
in the middle of the page.
5.9
I recognised the ‘dot commands’ which set the left margin so I reduced
the margin width and started again. Still no luck. The margin wasn’t a
constant width but changed frequently. Luckily my printer has a front
panel control which enables me to switch it to 96 characters per line
so, rather than search the entire file and change all the margins, I did
this and started again. Everything seemed to be working OK so I left it
running. The next time I looked it had all gone wrong again. I had
printed out about 40 pages and most of them had the header in the middle
of the sheet!
5.9
So what was wrong now? The answer was in the footers at the bottom of
each page. These consis-ted of the page number, centred, and the chapter
title to the right. This was not right aligned but TABed to the right.
This was OK for the first two chapters which had short titles but as
soon as a chapter with a long title came along, the line was overflowing
and everything was out of step again.
5.9
By this time I had wasted about 60 sheets of paper, a couple of hours of
time, a lot of wear on my printer ribbon, (not to mention my temper),
and I still had nothing useful to show for it. I then realised why I had
never properly tried Word Fugue before. I simply couldn’t be bothered to
go through all this just to print the manual. By now, I was determined
not to be defeated so I spent an hour going through the entire file and
shortening any line which looked as if it might be too long. The next
try was successful. How many people would have persevered (I didn’t when
I first tried it) and how many would have been able to make the
necessary changes?
5.9
Presumably, the person who wrote the manual tried it out but it would
only have been possible to print it properly on a 132 column Epson
compatible printer with 11 inch fanfold paper. Nothing else would have
worked.
5.9
The lessons
5.9
There are several important lessons which can be learned from this
example. The most important is that documentation should always be a
plain ASCII text file. Use only the characters 32 to 126 because
characters 128-255 depend entirely upon the individual printer. For the
same reason, avoid the ‘£’ (pound) and ‘#’ (hash) characters. These
actually have the same ASCII value (35) and will be printed the same
although which character is printed will depend upon whether your
printer is set to the English or American character set. The Archimedes
‘£’ (ASCII 167) is completely non-standard and will not be correctly
interpreted by any printer. Similarly, don’t use any printer codes for
pitch or underlining.
5.9
The only non-printable character permitted is the form feed code, ASCII
12. This is recognised by just about every printer. It is much better,
when breaking your text into pages, to use a form feed rather than
‘padding’ each page to the correct length with blank lines. If you
assume a maximum page length of 66 lines and use form feeds, the text
will print out correctly on 11 or 12 inch paper or even on single sheets
when the form feed will eject each sheet and wait until the operator
inserts a new one and switches it back on line before continuing.
5.9
There will, of course, always be someone who uses so-called A4 fanfold
paper and so can’t set up his printer to the correct page length with
the DIP switches. (I say so-called because since the sprocket pins on a
tractor feed are always exactly half an inch apart ALL fanfold paper
must have a sheet length which is exactly divisible by ½“. There is no
such thing as A4 fanfold. Don’t just take my word for it, measure it!).
There is no easy answer to this problem, but since this type of paper is
normally of high quality and expensive, most people who use it will also
have some 11 inch cheaper stuff for draft work.
5.9
Assume that you will always lose about three lines at the top of the
page. Most printers can’t print right to the top of the sheet, so you
must make allowances.
5.9
Page numbering
5.9
If your instructions take up more that a few sheets you will need some
sort of contents list or index. It therefore follows that the pages must
be numbered. You can avoid this chore by using a system of chapter and
paragraph numbering but this is tedious for the reader and even more
tedious for the writer if you subsequently re-arrange your text.
5.9
From the foregoing, it might be thought that it is better to put the
page numbers at the bottom of the page rather than at the top because
the top few lines will probably be blank. In fact, it is better not to
have a footer at all but to use a header instead. This is because the
amount of text on each page will vary so if you use footers, you will
need to pad out the page with blank lines to avoid the footer appearing
halfway up the sheet. Having no footer, but allowing for about six blank
lines at the bottom of a page, you will also not have the problems that
arise if the printer requires more space than usual at the top of the
sheet. All that will happen is that the space at the bottom will be
reduced. If you use footers, it could end up printed at the top of the
next page.
5.9
If your manual is big enough to need page numbers, it is also best to
give it a left margin at least six or seven characters wide. This will
enable the user to staple the pages together along the left hand side to
make it into a ‘book’ which is far easier to use.
5.9
If you write your instructions in this way then the user can load them
into Edit and read them before deciding whether they want to take the
trouble to print them. If they have used an earlier version, they can
delete all the parts that are common to the old version and print only
the new pages. The file can be printed by simply COPYing it to the
printer. (Press F12 and type ‘copy <filename> printer:’ where <filename>
is the name of the instructions file). In fact, it is normally best to
include a simple OBEY file in your application directory to do this.
5.9
Please continue to write to me at: 39 Knighton Park Road, Sydenham,
London SE26 5RN. A
5.9
5.9
DIY Flight Simulator
5.9
Tord Eriksson
5.9
Anyone who is interested in flight simulators and wants to know how to
make one for themselves need look no further. Simis Ltd have produced a
do-it-yourself simulator called Flight Sim Toolkit just for you! (£44.95
inc VAT or £42 through Archive.)
5.9
The package
5.9
When you open the box you’ll find two unprotected discs (a very good
idea!), one thick manual and a leaflet. The latter is for those who
wants to rush off flying in circles at once and gives a short summary of
how to get started.
5.9
One of the discs contains two complete flight simulators, one called
Tornado and the other called WWI, so you could start with that before
tackling the art of creating a complete simulator by yourself. The main
program is a group of editors, one for creating the objects or shapes
seen within the simulator, one for creating the aircraft’s character
istics, one for creating the instrument panel and last the world editor,
which is used to place the shapes inside the “world” within which you
will be flying.
5.9
Editing a world
5.9
The easiest way of learning how to do something is to use a trial and
error basis. So open the WWI directory on your copy, having made sure
that the operating system has “seen” the world editor before, and double
click on the world file icon.
5.9
This will open a map covering the entire “world” with all objects or
shapes drawn in as squares. If you highlight an object you will see its
true character, if it is big enough. Press “zoom” in the toolbox menu
and you will automatically zoom in on the shape in question − something
that looks good in Impression or Draw.
5.9
The easiest way of modifying the world is to delete the highlighted
object with <Ctrl-X>. To add objects you drag shapes from the shapes
directory inside WWI. Very complex worlds can be created, filled with
objects.
5.9
Creating a new aircraft
5.9
To make a new aircraft you double-click on the Camel file and you will
see a very odd looking aircraft in a window. This is the aerodynamic
equivalent to the double-decked Camel. Try moving the wings forward,
delete the tail or change the anhedral to dihedral. This new aircraft
will behave very differently from the original − most likely it will be
uncontrollable!
5.9
If you want, you can put modern equipment on board, such as Air-Air or
Air-Ground missiles.
5.9
To install radar and other modern aids into your aircraft, there is a
cockpit editor. This is very straight forward to use and you drag the
things you need from a menu or tick them off from a list. With Paint you
can create a new panel, or modify the old, and then install the
instruments.
5.9
With some effort, you can have a Camel equipped as well as any modern
Tornado! If you borrow a Tornado from the Tornado simulator you’ll find
to your horror that the enemy’s Fokkers are suddenly as fast as your own
aircraft!
5.9
The problem of shapes
5.9
The only thing that has caused problems for me (and the reviewer in Risc
User, March 1992) is the shapes editor. With this you can create new
objects (shapes), modify them and view as 3D shapes or in three views,
just like any technical drawing.
5.9
To create a box, you draw a square one unit wide, then move one unit up
and create another square. Easy as stealing apples. The problems comes
when you want to colour the different sides of the box. If you want an
open box you will have to colour at least nine sides.
5.9
Let us begin with the bottom... If the box is to rest on the ground, you
just have to colour the inside bottom by selecting that polygon and then
setting the colour. Then you have to turn the box onto its side creating
new squares that you colour on both sides. If you forget one side it
will become invisible from that direction!
5.9
The easiest way of learning how to do this is to modify an existing
shape. It is still a very complex task and, if you study the Fokker, you
will find one of its wheels transparent from one side! The easiest way
to modify the Fokker is to enlarge it, say a 100 times. Then it is very
easy to study the details of the aircraft, and you realise how complex
it can be to create even a simple thing such as a silo.
5.9
You will also have to change the distance from which the object becomes
visible, as otherwise you might crash into the gigantic Fokker before
you see it! There are three versions of every object depending of the
distance from your aircraft. For huge objects it is sensible to copy the
near view to the middle and far views. Normally you have lots of detail
on close objects and almost none on distant objects.
5.9
With your new and modified shapes in your shapes directory, you can go
back to the world editor and include the gigantic Fokker in one corner
of the game area. As all enemy aircraft are Fokkers they will now be
gigantic! To avoid this you could rename the big Fokker to Richoven.
5.9
In a menu, you will now be able to set attributes, such as durability,
if it is a piece of scenery, etc. You can also set the shape of the
object after it has been destroyed. You can choose any shape from the
shapes directory − why not a tree?
5.9
After many hours of creating shapes, editing worlds, aircraft and
enemies, you will have a new fully functional flight simulator, quite
like the first Simis simulator, Interdictor. Controls are those of the
MIG simulators, minus a few and there are some features not available in
Interdictor, such as outside view.
5.9
Surface-to-Air missile sites, navigational beacons, enemy-producing
hangers and much more are also available from menus in the world editor.
5.9
In short, very complex games/simulators can be created, if you have the
patience!
5.9
Conclusion
5.9
Considering the cost, around £40, and that it takes some real effort to
create a new simulator, Simis’ Flight Sim Toolkit is not for everyone.
However, for those who are diligent enough, it will be a blessing − just
as adventure game editors have been very good for the adventure market.
5.9
There are some rough edges, such as the shapes editor that could be made
more user-friendly. Also irritating is the way all the toolbox menus
remain open after the window they control is closed. Very confusing and
silly!
5.9
Many things are very pleasing, such as the world editor and the cockpit
editor. The aircraft editor is a bit annoying, as you can not create
aircraft with foreplanes, such as the EFA or Viggen, nor aircraft with
long wings like the U-2. My next try will be a seaplane or a flying
boat, looking for submarines ...
5.9
When your simulator is finished it is OK with Simis for you to sell it
as your simulator, as long as you tell the user that it was created with
Simis’ Flight Sim Toolkit.
5.9
Be diligent and you might earn a living by selling your very own
simulators, created with Simis software! A
5.9
5.9
Oak
5.9
From 5.8 page 6
5.9
5.9
How fast is your Archimedes?
5.9
Tord Eriksson
5.9
(+Laurence Brightman)
5.9
The development of computers and computing power is blindingly fast.
Things which, five years ago were considered unattainable are now
possible for the mere amateur. I will illustrate this by doing an old-
fashioned benchtest on four computers, each representing a small step in
complexity and a great step in speed.
5.9
Byte benchtests and PCW
5.9
It was the American computer magazine Byte that pioneered the benchtest
ing of computers in the early eighties and the British magazine Personal
Computer World quickly followed in Byte’s footsteps, publishing their
own variant called PCW Benchtest.
5.9
This is now no longer used but it does give a good idea of the perfor
mance of a computer, even if the test does not contain any spreadsheet
recalculations, that essential item for economists, nor any CAD/CAM
performance tests.
5.9
The test programs are written in Basic and consist of six different
tests. The first one times integer calculations:
5.9
1 TIME=0
5.9
10 REM INTMATH
5.9
20 PRINT“START”
5.9
30 X%=0
5.9
40 Y%=9
5.9
50 FOR I%=1 TO 1000
5.9
60 X%=X%+(Y%*Y%-Y%)/Y%
5.9
70 NEXT I%
5.9
80 PRINT “FINISH”,X%,TIME/100
5.9
The second times floating point calculations, by using floating point
variables instead of integer; otherwise exactly the same as Test 1. The
third test checks the trigonometrics:
5.9
1 TIME=0
5.9
10 REM TRIGLOGMATH
5.9
20 PRINT“START”
5.9
30 X =0
5.9
40 Y =9.9
5.9
50 FOR I%=1 TO 1000
5.9
60 X =X + SIN(ATN(COS(LN(Y))))
5.9
70 NEXT I%
5.9
80 PRINT “FINISH”,X ,TIME/100
5.9
The fourth checks the speed with which the computer writes text to
screen:
5.9
1 TIME=0
5.9
10 REM TEXTSCRN
5.9
20 PRINT “START”
5.9
30 FOR I%=1 TO 1000
5.9
40 PRINT “123456789qwertyuiop”, I%
5.9
50 NEXT I%
5.9
60 PRINT “FINISH”,TIME/100
5.9
The fifth test does the same with graphics:
5.9
1 MODE 2
5.9
5 TIME=0
5.9
10 REM GRAFSCRN
5.9
20 PRINT “START”
5.9
30 FOR I%=1 TO 100
5.9
32 FOR Y%=1 TO 100
5.9
40 PLOT 45, I%,Y%
5.9
42 NEXT
5.9
50 NEXT I%
5.9
60 PRINT “FINISH”, TIME/100
5.9
The last test is a test of the disc storage performance and it can vary
widely with the disc type used. The access-time for the floppy drive is
always the same and the RAM disc is roughly twice as fast as the the
rather slow SCSI drive, depending on mode:
5.9
1 TIME=0
5.9
10 A=OPENOUT “SCSI::SCSI4.$.TEST”
5.9
20 PRINT “START”
5.9
40 X$=“123456789qwertyuiop”
5.9
42 FOR I%=1 TO 1000
5.9
44 PRINT#A,X$
5.9
50 NEXT I%
5.9
52 CLOSE#A
5.9
60 PRINT “FINISH”,TIME/100
5.9
For comparison, I used an old Spectrum 48K, a Compaq 386 and an Amstrad
CPC. The A3000 was first tested as delivered (no VIDC Enhancer nor ARM3)
and then with everything ON!
5.9
Test number 1. 2. 3. 4.
5. 6.
5.9
Spectrum 48k − 18 227 84
84 46³
5.9
Amstrad CPC 4·5 8 16
160 22 29¹
5.9
Compaq DeskPro 386 1·0
1·0 3·9 25·5 5·0 5·0²
5.9
A3000, mode 78 0·4 0·4
1·6 13·0 2·45 2·62¹
5.9
A3000, turbo! 0·05 0·06 0·3
1·8 0·52 0·78²
5.9
A540 (R/O2) 0·038 0·045
0·20 1·16 0·37 0·54² 2.01¹
5.9
A540 : Compaq 386 ×26
×22 ×19 ×22 ×14 ×11
5.9
A5000 0·043 0·050 0·26
1·38 0·43 0·79² 6.12¹
5.9
A540 − A5000 12% 10%
22% 16% 14% 32% 67%
5.9
[ A540 (R/O3) 0·037 0·043
0·23 1·36 0·42 0·80 1.4
5.9
A540 (R/O2 − R/O3) −3%
−5% 12% 15% 12% 32% −44%]
5.9
486 (BBC Basic) 0.19 0.19
0.11 5.60 0.93 0.15
5.9
A540 : 486 (BBC) ×5.0
×4.2 ÷1.9 ×4.8 ×2.5 ÷3.6
5.9
486 + co-processor 0.05
0.03 0.07 3.24 0.50 0.11
5.9
A540/486 ×1.3 ÷1.4 ÷30·3
×2.8 ×1.2 ÷4.9
5.9
5.9
5.9
5.9
5.9
5.9
5.9
5.9
5.9
5.9
5.9
5.9
5.9
5.9
5.9
5.9
5.9
5.9
(Where the comparison represents a gain, it is shown in bold and where
it is a loss, it is in italic.)
5.9
Notes: ¹ = floppy, ² = hard disc, ³ = microdrive
5.9
The figures speak for themselves, but remember that an A540 or A5000 is
even faster! Compared to the top of the range Compaq 386, the Archimedes
is lightning fast! (Times in seconds.) A
5.9
I have added the A540 and A5000 tests and also added a comparison of the
A540 with the Compaq (which speaks for itself) and a comparison between
A540 and A5000. I did the tests on the A5000, naively thinking that the
A5000 with RISC-OS 3 would be faster than the A540 but as you see, it is
slower by a noticeable percentage. The difference in Test 6, the hard
drive test, is not surprising as you are comparing a 40M IDE with a 120M
SCSI but the fact that the A5000 is slower on the other tests is
interesting. In particular, it is interesting to see comparison of Test
6 done on floppies on A540 and A5000, the latter being only about one
third the speed. I did another couple of tests on the floppy drive
speed, I copied a disc with about 500k of files and directories (Program
Disc 5.7, actually) from floppy to ram disc and then wrote it back again
to a blank disc. The times for A540 were 39s and 78s, respectively and
for A5000 were 81s and 158s. This is not as bad a speed reduction as
Test 6 − both represent a 52% reduction in speed compared to A540/RISC-
OS 2.
5.9
[The tests on RISC-OS 3 on the A540 are a bit tentative because it was
comparing two different A540s, not the same machine which the ROMs
swapped over and it is not the latest version of RISC-OS 3, so we will
re-do these tests when RISC-OS 3 is released officially.]
5.9
Has anyone else done any other speed comparisons? Ed.
5.9
Another Speed Comparison
5.9
Laurence Brightman
5.9
Here is a comparison of ARM and Intel architectures with RISC-OS and MS-
DOS operating systems. The table opposite shows some figures which were
arrived at using a set of ‘C’ Unix benchmarks. The figures are timings
in seconds − except for Dhrystones, which are units of speed
measurement.
5.9
6 Mhz IBM AT 25 Mhz Arc 33Mhz 80386
8 Mhz Arc 25 Mhz Arc
5.9
80286 DOS 3.3 PC Emul 1.6 (64k cache)
DOS 5 RISC-OS RISC-OS
5.9
Ackermann 5.76 10.05 0.659
2.05 0.968
5.9
Dhrystones 1,253 469
10,204 3,048 8,620
5.9
Integer Math 0.439 0.714
0.054 0.459 0.069
5.9
MS-Sieve 34.89 36.208 3.626
13.413 3.742
5.9
Pi Calculation 43.62 93.406
4.95 4.022 0.838
5.9
Floating Point Math 1.373
0.274 0.249 0.249 0.0598
5.9
Storage (Hard Disc) 3.296
6.318 0.934 0.339 0.199
5.9
Trigonometry Test 10.934 6.538
1.758 4.241 1.307
5.9
Text Screen Speed 50.274 40.879
11.978 6.367 2.784
5.9
Graphics Screen 16.51 79.45
2.48 2.055 0.7884
5.9
5.9
Ackermann ÷8.7 ÷15.3 =
÷3.1 ÷1.5
5.9
Dhrystones ÷8.1 ÷21.8 =
÷3.3 ÷1.2
5.9
Integer Math ÷8.1 ÷13.2 =
÷8.5 ÷1.3
5.9
MS-Sieve ÷9.6 ÷10.0 =
÷3.7 ÷1.03
5.9
Pi Calculation ÷8.8 ÷18.9 =
×1.2 ×5.9
5.9
Floating Point Math ÷5.5
÷1.1= = ×4.2
5.9
Storage (Hard Disc) ÷3.5
÷6.8 = ×2.8 ×4.7
5.9
Trigonometry Test ÷6.2 ÷3.7 =
÷2.4 ×1.3
5.9
Text Screen Speed ÷4.2 ÷3.4 =
×1.9 ×4.3
5.9
Graphics Screen ÷6.7 ÷32.0 =
×1.2 ×3.1
5.9
The second half of the table takes the 33MHz 386 as the norm and shows
how many times faster (× in bold) or slower (÷ in italic) the others are
by comparison.
5.9
Generally, the main benchmarks that are used between different architec
tures are those utilising compiled, as opposed to interpreted,
languages. Reliance upon interpreted languages will usually produce
large discrepancies because of the different efficiencies between them.
The article certainly does show the relative efficiencies of the
different Basics.
5.9
Although there are always differences between different compiled
versions of the C benchmarks, if they are compiled with any optimisation
turned off, the results will be closer to the actual differences in
hardware than the efficiencies of the language versions. If done with
optimisations turned on, one is back to testing the language version
rather than the hardware. A
5.9
5.9
The DTP Column
5.9
Rob Sherratt
5.9
First, an apology − I did not anticipate the volume of correspondence
that this column would generate and I overestimated the free time I had
available. I have therefore decided that I can no longer continue as
either “DTP coordinator” or a regular DTP editor. Hopefully, a new DTP
editor will come forward to join the excellent team of Neil Whiteley-
Bolton, Richard Hallas and Richard Else (contact Paul Beverley if you
are interested). In the meantime, please could all correspondence for
the DTP column be marked “DTP column” and sent to Paul Beverley c/o
N.C.S.?
5.9
News and Views
5.9
In the absence of input from the major Archimedes suppliers or software
houses, I thought I would draw one or two comparisons from use of my
A440 and the machine sat to its left which is a 20 MHz 80386DX also with
4 Mbyte RAM and running Windows 3.1 and the Lotus SmartSuite appli
cations. Both machines are connected to my LBP4 laser printer − the
Archimedes via a LaserDirect interface and the PC via the parallel port.
5.9
The first comparison is on the “ready to use” time after power on. The
Archimedes is ready in about 20 seconds and the PC takes 90 seconds. The
next comparison (which is not really fair since I am not aware of a
direct drive laser interface for the PC) is the printing time for
identical two page documents. The Archimedes takes 30 seconds and the PC
takes 180 seconds. Next comes the filing system. Loading or saving any
file on the Archimedes can be done directly and all files are iconised
at all times. On the PC, nearly all applications require you to thread
through lists of textual directories and files before you find what you
want. The exception is the File Manager which is now quite nice in its
own right, except that there is no interaction between it and the file
menus of all the other applications.
5.9
All the above may seem to damn the PC out of hand. However, the quality
and spectrum of much of the business application software (when you do
eventually manage to run it and load files) exceeds that available on
the Archimedes. Presentation graphics (producing slide shows with
uniform graphical style), spreadsheet and charting software, business
accounting software, databases, etc, are available with such variety and
in most cases high quality on the PC under Windows. We have yet to see a
real “business market” appear for the Archimedes, although products such
as Impression and Ovation in the DTP sector are still superior in
facilities, ease and speed of use to anything available on other types
of machine (Macintosh and PCs included). I trust that Artworks will
compete proudly in the areas of Graphics creation and Presentation
Graphics but we will have to await the review copy.
5.9
Ovation Hints & Tips
5.9
The following was submitted by Hilary Ferns, for which we are very
grateful. She adds that the Ovation manual is full of hints and tips
like these (and identical to some we have already published − oops!).
5.9
• Selecting tools − Using <select> to choose from the toolbox will
automatically return you to the text insertion icon after you have
performed one action with that tool. Using <adjust>, however, will allow
you to remain with your chosen tool until you decide to select the next
tool again yourself. This is useful when you want to draw several lines
or frames, or link a number of successive boxes.
5.9
• Using picture frames − The default ‘inset’ for a picture frame is 0
mm. (For a text frame it is 1 mm.) Ovation will scale your imported
picture with the bottom and left sides aligned to the frame. I have
discovered on many occasions these sides of a picture (Draw or Sprite
format) to have been slightly cropped. This is not always obvious on
screen but is quite noticeable when printed. I now offer various answers
to this problem.
5.9
1. Set inset to 1mm before importing the picture.
5.9
2. If you want to move the picture within the frame, whatever the inset
you are ln danger of losing a fragment on any edge. You can give
yourself more space by either increasing the frame size (often not
suitable) or by decreasing the size of the picture by 1% in each
direction.
5.9
3. Remember too that holding down shift while moving the picture will
restrict movement to horizontal and vertical directions only, thus
enabling you to move the picture more accurately.
5.9
I find the keyboard short-cuts for scaling a picture within a frame
particularly useful <shift-ctrl-G> to scale and <shift-ctrl-H> to fill
the frame.
5.9
• Text to Draw path object − The character selection application
(!CharSel) supplied with Ovation, apart from offering access to
alternative characters, also allows a single character to be changed to
Drawfile format. To do this, you select the character with <adjust>. The
resulting Drawfile icon can then be dropped into an Ovation picture
frame. Various interesting effects can be obtained by using these
characters in headings (together with a bit of imagination!).
5.9
• Default style-sheet − In the !Ovation application directory is a
style-sheet called ‘Default’. This is the one used each time you load
Ovation and click on the icon to open up a document. This can be
replaced with a style-sheet of your own choice, e.g. one you use
regularly, but it must be called ‘Default’. This would mean that you
will always have your own particular choice of paragraph styles defined
when Ovation is run. This is a very useful facility not to be missed.
5.9
The next few hints and tips were sent by Aneurin Griffiths from Trefin,
Dyfed. Again we are most grateful and are glad to see a number of
readers redressing the Impression/Ovation balance by sending in some
really useful Ovation tips.
5.9
• To draw short lines using the “line-tool” − Draw a long line, even
passing through text, and press <select>. Now shorten the line by
placing the pointer on the red box at the ‘long end’ of the line, and,
using <select>, shorten the line to the required length.
5.9
• Printing labels using computer sheets with 2 or 3 rows of labels − If
the sheets are not A4 size, adjust the page size on the printer menu.
Carefully measure the distance from the top of the sheet to a point half
way between the first label and the second label. Use ‘View 200%’ and
mark a horizontal guide line by placing the pointer on the side ruler
and pressing <select>. (Fine adjustment is possible using <adjust>.)
Measure the distance from the mid point previously taken to one mid-way
between label 2 and 3. Carefully draw a guide line as before. Other
guide lines can now be drawn with the same spacing.
5.9
Vertical guide lines can now be drawn in the same way. Now draw a text-
frame in the first of the rectangular spaces, allowing space for the
margins around the label. At this stage it is a good idea to save the
layout as “Blnk_xy”, where values for the label size could be coded.
5.9
Enter the text in the text frame. Then select Object − Duplicate Frame,
and enter the appropriate number (‘requirement’ − 1!). Without changing
the instructions further, a stack of labels will be shown. These are now
easily moved to their positions on the grid using <adjust>. Obviously,
the labels on one printed sheet may be all the same or assorted. It is
sensible to make the first printout on an A4 sheet and then the A4 and
the sheet of labels may be matched from the top and left margins. Any
necessary adjustments can be easily made. Using this method the sheet
feed system is used. This works very well with a Canon BJ130e printer.
5.9
• Using Ovation’s spelling checker − It is important to realise that the
checker must be started at the beginning of each Chapter when checking a
document composed of more than one Chapter. After Ch.1, select the first
page of Ch.2 and start the spell check again.
5.9
This from Albert Kitchenside, Addlestone, Surrey:
5.9
• Importing Text from PipeDream − The Ovation manual recommends
importing PipeDream text by holding down <ctrl> while dragging the
PipeDream text file into an Ovation frame. This has the effect of
converting single line terminators into spaces to allow Ovation to
reformat text within a frame. However, Albert finds that lines between
paragraphs and headings are erroneously removed using this method. He
has sent a Basic program which processes files correctly prior to import
into Ovation. They are in the directory PD/OV on the monthly program
disc.
5.9
Impression
5.9
Hints & Tips
5.9
• More than 76 graphics per chapter − If you really want to have more
than 76 graphics per Impression chapter, then use David Pilling’s ArcFS
to store your document. You will then be able to store an unlimited
number of graphic files, but you may find the access times a bit slow!
Also, RISC-OS 2 users should be aware that a bug manifests itself after
the 9358th file and filenames become confused. − Martin Sperl, Austria.
5.9
• More than 76 fonts available at once − Continuing the ‘trick’ above,
it is also possible to have an unlimited number of fonts available
simultaneously by copying all files from your !Fonts directory into an
ARCFS archive (plus all the extra fonts that you have always wanted to
use), and then insert the following line (for example, assuming the new
archive is called “Font”) into your !Boot file within the new archived
font directory:
5.9
Set Font$Path ARCFS#Font:$
5.9
You can then cause the new set of fonts to be loaded automatically by
inserting the following line within your system startup sequence (after
ArcFS has been run!):
5.9
OpenArchive SCSIdisc4::ARCFS#Font
5.9
(You need to substitute the name for your own hard disc in place of
SCSIdisc4.) Also, please note that to avoid a speed penalty in system
startup, you do not have to use compression when creating the font
archive and you will still save approximately 2k of disc storage per
font. − MS
5.9
• Viewing the screen without moving the cursor − Hold down <Shift> and
<Ctrl> and then use the arrow keys. It changes your view on the
document, left, right, up and down, without moving the cursor position.
This is useful if you don’t want to have to change the magnification to
something smaller, and thus lose the legibility of the screen font. −
David Crofts, Bury St Edmunds
5.9
• Large capitals in normal text − If you like having a large letter to
add emphasis to the start of a paragraph but have found that the
subsequent line is spaced too far beneath, there is a solution:
5.9
Edit the Main Heading style (or create a new style), clicking on the
120% button, and then changing the Line Spacing box to the same as the
Font Size box e.g. 24pt as default. The problem, as you can see above,
is solved! − DC
5.9
• Substitute for colour in documents − Try a little variety in Black and
White. For a poster I did recently, I redefined some of the font colours
in styles to grey palettes. This gives an interesting variety to the
print density if you have a decent printer driver. − DC
5.9
• Bullet point − <shift−backspace> is a short-cut to enter a • bullet in
the text. − DC
5.9
• Deleting styles from the menu − another of those hints that everyone
else probably knew about all along...
5.9
When you merge pieces from several old documents into one new text, this
often means that your style menu becomes unnecessarily long.
5.9
You can delete those unwanted styles in the “edit style” window, with
one snag:
5.9
If you click first onto a style in the style list, then on “edit style”,
any attempt to delete that style will bring up an error message.
5.9
This is because clicking into the style list automatically selects a
style at the cursor position.
5.9
Therefore, after you open the edit window, you must first deselect the
style before it can be deleted! − Jochen Konietzko, Köln, Germany
5.9
• Installing Impression on the A5000 − While helping a relative to setup
his A5000/Impression system, we discovered that the installation program
for the DTP installs the old Font Manager (v2.44) onto the !Fonts
directory and all the old files associated with it. The ability of the
new Font Manager (v2.49) to address multiple font directories is lost
and Impression only ‘sees’ either the ROM fonts or the hard disc fonts.
I suggest that anyone installing Impression is urged to remove the
support files in the fonts directory after the installation process
(leaving the actual fonts themselves behind) and reload the files within
the fonts directory on the Apps 1 disc. Hopefully, Computer Concepts
will alter the !Install program to take account of the changes in RISC-
OS 3. − David Woods, Glasgow
5.9
• More on Impression styles − Various readers have written with queries
on styles called ‘table’ and ‘default’ that appear on the style menu
with Impression version 2.16. These are not (in themselves) new program
features or bugs − they are just extra styles stored as part of the
!Default document stored in !Impress.Auto. The facilities provided by
the ‘table’ style are all as documented in the very first Impression-2
User Guide and are automatically set up for you if you import spread
sheet data using the LoadCSV+ loader which comes with the business
supplement. If the extra styles cause you problems or conflict with any
of your own style names, all you have to do is open a blank document,
edit the offending styles and click on the delete button to remove them
and save the document with the name !Default in one of your own
directories. Now quit Impression, open !Impress.Auto and move the
“original” !Default document elsewhere and replace it with the one you
just created. Now when you start Impression, the offending styles will
not appear. You may like also to set up your most frequently used master
pages and other styles using the same method. − Rob Sherratt,
Felixstowe.
5.9
• !Impression with !Compression − The message from Impression
“Incompatible document version” means you are trying to load the adfs
icon into the application rather than the compressed icon!! − Ned
Abell, Kidderminster
5.9
The Readers Write!
5.9
Impression Junior and Function Keys
5.9
Q: Chris Dawson uses Impression Junior and asks whether his favourite
fonts can be accessed from function keys. He also asks for advice to be
printed on the use of the Impression draft printer drivers.
5.9
A: Although Impression-2 allows styles (including font changes) to be
assigned to function keys, this facility is not included in Impression
Junior. On the use of draft printer drivers, the most common problem is
the generation of spurious form feeds. You can avoid this by setting
‘scale’ in the print box to 97% (as printed in March 92 Archive). You
must also have the correct Impression printer driver loaded in the
!Impress. Extensions directory − the ‘standard’ RISC-OS printer drivers
cannot be used.
5.9
32 bit graphics boards?
5.9
Q: Martin Sperl from Austria says he has seen advertisements for a 32
bit graphics board for the Archimedes − called the “Millipede Apex
Imager” which costs about 10,000DM, depending on memory size. Does
anyone know the address for Millipede, or can you forward to Archive a
data sheet/advertising literature if you have any?
5.9
Problem with PrinterBJ?
5.9
Q: David Crofts from Bury St. Edmunds writes that he recently bought the
PrinterBJ driver from EFF. It “uses all 64 pins of the Bubble jet”, but
apparently causes some problems with Impression. He often gets the
message “Sprite does not exist” and the printing stops in the middle of
a page. It also didn’t seem to like his grey fonts and printed them as
black. The double-pass BJ driver he had purchased from Beebug earlier
did it all right. He now plans to try Computer Concepts’ BubbleJet
Direct to improve speed of printout.
5.9
A: I can’t help directly, not having a bubble jet printer. Could anyone
else, who has knowledge of EFF’s bubblejet printer driver, comment on
this?
5.9
Keeping track of Draw and sprite files?
5.9
Q: Steve Hutchinson of Gloucester would like help keeping track of his
Draw and Sprite files.
5.9
A: You can use a program called !Glimpse from Sherston Software which
costs around £8 plus VAT. (It was reviewed last month, page 26. Ed) This
displays a picture gallery of miniature versions of all your draw and
sprite files. Also Hugh Eagle has written a Shareware program called
!PickAPic which does a similar job very competently. This may be
available from Archive’s Shareware library by the time you read this.
5.9
DTP Swap Area
5.9
This area contains the names and addresses of “new” people who have
agreed to swap DTP material they have published. The aim of this is to
improve one another’s skills by the exchange of printed ideas. No money
should change hands.
5.9
If you want to “swap” with anyone, you must first publish your name and
address and area of interest, and then write directly to whoever you
want to do a “swap” with. (Please do not write to Archive to ask us to
organise swaps for you.) Archive may publish a directory of “swappers”
if there is significant interest in this area. The other “rules” were
printed in Archive 5.5 p25.
5.9
Finally, thanks to the scores of people who have written to me with
swaps? I have tried to make sure that all your addresses have been
included in Archive where you have given permission for them to be
printed. If anybody has been forgotten, please let me know. I have to
confess to having a large personal backlog of letters to reply to, and
hope to be corresponding shortly, with copies of our own material.
Please have patience! I would still like to be on the ‘swaps list’
despite no longer having time to be involved in the full DTP column. My
address for swaps is 134 High Road West, Felixstowe, Suffolk IP11 9AL
5.9
New Names and Details:
5.9
Alan Warren produces work for local printers and various individuals but
would really like to be involved producing material for clubs, churches,
etc. Anyone wanting to contact Alan in this regard, or who would like to
swap samples of work (Alan sent us some questionnaires and news sheets)
should write to: 25 Woodlands, Seaham, Co. Durham SR7 0EP.
5.9
Steve Ellacott produces church magazines and evangelistic material on
his Archimedes A440. Although he has mainly used Acorn DTP, he has just
switched to Impression. His Archimedes is also used to produce mathe
matical texts, although he prefers to edit formulae manually to give
better control over layout, rather than use something like Equasor (any
comments from Equasor users?). He is especially interested in hearing
from people who have succeeded in graphing mathematical functions and
producing Draw file output. (Schema and PipeDream can generate Draw
files from spreadsheet data, so you could use your formulae inside the
spreadsheet, then plot the resulting data later.) Anyone wanting to swap
with Steve should write to: 161 Ditchling Road, Brighton BN1 6JB.
5.9
Charles and Pam Barraball jointly edit “Crossing” − a monthly church
magazine with a circulation of 300+ and printed as an A5 pamphlet from
Impression. Storage problems are overcome with Compression and the
prolific use of chapters. Bulk text is input to Pipedream first. Anyone
wanting to swap material should write to: 287 West Barnes Lane, New
Malden, Surrey KT3 6JE or telephone 081−949−0708.
5.9
Jean and John Daniels produce an A5 magazine for St. Andrew’s Church,
Enfield. The magazine has a circulation of 1200+ and is largely produced
using Impression and incorporates as much graphical material as they can
lay their hands on. Anyone wanting to swap should write to: 13,
Shrubbery Gardens, Winchmore Hill, London N21 2QU or telephone
081−360−8716.
5.9
Steve Hutchinson bought his Archimedes this year to help produce the
vast volumes of material he writes for Scripture Union. He also writes
song books and uses Rhapsody and Scoredraw − and plays his compositions
through his MIDI keyboard as a last check before publication! He would
like to swap any of his “non SU copyright” resource material with anyone
interested. Please write to: 19 Larkhay Road, Hucclecote, Gloucester GL3
3NR.
5.9
Paul Cayton produces a monthly church magazine − St. John’s Yeadon −
with a very nice colour cover, and has amassed vast volumes of Christian
clip art, much of which is PD. He would like to swap magazines and PD
clip art. Please write to: 55 Coach Road, Guiseley, West Yorkshire LS20
8AY A
5.9
5.9
PipeLine
5.9
Gerald Fitton
5.9
I deliberately delayed sending this month’s contribution to Paul until
the May 1992 Archive was released. This was so that I could give you
some idea of the early response to last month’s article. There has been
a lot, but I shall wait until I have collected more replies on this
‘hot’ topic before summarising your replies − but one thing won’t wait.
If you have a closer look at what I said, I did not express an opinion
about whether the Archimedes “has reached the downward part of its life
cycle”, what I said was “there have been well informed Archimedes users
who, having seen... say that it is increasingly difficult to recommend
the Archimedes to first time buyers”. I asked you the questions; I kept
and am still keeping my opinions about the Archimedes and about Squirrel
to myself until I hear more from you! Please write to me but make sure
you let me know whether your thoughts are for publication or not.
5.9
One of the ‘hottest’ topics is summarised by a question which I didn’t
ask but which I implied. “You must choose from two packages of similar
specification from two different software houses. One is about 50% more
expensive that the other. You believe that you will get more long term
support such as a help-line, upgrades and future support from the more
expensive one. Which do you buy?” Have a look at the advertisements for
N.C.S. in some other magazines and you will see that NCS make a virtue
out of the slightly higher prices of some products!
5.9
PipeDream 3 version 3.14
5.9
It is opportune to remind you that the latest (and probably final)
version of PD 3 is version 3.14. If you have not upgraded to V 3.14 then
send us your disc together with a self addressed label and return
postage. Colton Software have provided us with the means (and the
permission) to upgrade your PD 3 to V 3.14.
5.9
‘Interface module not found’ error
5.9
If you are getting an error message that certain modules cannot be found
then have a look at the !Boot and !Run files of the application you are
trying to load. They probably have a series of commands for loading
modules such as:
5.9
RMEnsure FPEmulator 2.80 Load System:Modules.FPEmulator
5.9
Change such lines as these to:
5.9
RMEnsure FPEmulator 2.80 RMLoad System:Modules.FPEmulator
5.9
The difference is “RMLoad” is used rather than “Load”.
5.9
Interword to Impression
5.9
I have received questions about transferring Interword to Impression and
I have also seen it as a !Help request in Risc User. The solution for
PipeDream owners is to use the application !PipIn to convert files from
Interword to PipeDream and then use the application !PD_Impress to
convert to Impression format. It takes less than a couple of minutes and
it works (nearly) every time. Ian Williamson has a wide range of
‘conversion’ applications and utilities so please get in touch with him
if you have any problems with converting ‘old’ files to (and from)
PipeDream format. (If you just want to transfer from Interword to
Impression, why not use the Inter-Word loader provided with Impression
itself? Ed)
5.9
Prizes for charts
5.9
If you can create an interesting looking chart using Colton Software’s
PD 4 graphics then you can win a prize! Since the charts are hot linked
you can ‘tweak up’ your drawing by changing the values in the spread
sheet. You can use the PD 4 demo disc and the screenshot facility of
!Paint if you do not have the full version of PD 4 so, all of you, have
a go!
5.9
Dutch kalendar
5.9
No! Kalendar is not a spelling mistake. This is a PipeDream application
which you will find on the Archive monthly program disc. Day and month
names are in Dutch. The week numbers are also displayed. If you type in
a different year then the kalendar is recalculated.
5.9
Crib Card
5.9
Douglas Bell has sent me two versions of a crib card, one for PD 3 and
one for PD 4. They summarise all the commands, maths (and other)
functions, function keys, etc. You use Douglas’ application by printing
out the crib card and keeping it handy (stick it by your monitor). These
too are on the monthly program disc.
5.9
Lost characters
5.9
Roger King has sent me a letter which he produced on his A5000 using
PipeDream and a PipeDream printer driver. If he uses an odd number of
spaces to indent the first line of his paragraphs and if the first line
of a paragraph (the indented line) finishes with a two letter word, then
he loses the second letter of the two letter word. Does anyone know what
is going on? Have you had this problem too?
5.9
Rounding errors
5.9
On the Archive monthly disc you will find a directory called Rounding.
Within it there is a file [Zero01]. Only one slot, A3, is used. It
contains the ‘formula’ given below:
5.9
1−(0.1+0.1+0.1+0.1+0.1+0.1+0.1+
5.9
0.1+0.1+0.1)
5.9
Now, if you are quick at mental arithmetic I’m sure that you’ll be able
to work out the answer. Here’s a clue − it’s not a lot!
5.9
If you don’t have the Archive monthly disc then you’ll have to type in
the formula to find out what it adds up to. Use <Ctrl LDP> to change the
number of decimal points to F (floating or free format) and you will see
that the answer is displayed not as 0 but as:
5.9
1.1102230246251565e−16
5.9
What, you may wonder, is the meaning of e−16? Well, it means that you
have to ‘shift’ the decimal point 16 places to the right. This means
that the number given by the formula is:
5.9
0.00000000000000011102230246251
5.9
565
5.9
This is a small number but it is not zero! Why is this? Well, the ten
0.1’s in the formula are each stored in the Archimedes in binary
floating point. Binary floating point consists of a ‘mantissa’ and an
‘exponent’. The mantissa is the sequence of digits which you get if you
divide 1 by 10 in binary. The exponent is a way of expressing where the
‘binary’ point (like a decimal point) is placed. The problem arises
because, if you divide 1 by 10 in binary, you do not get a terminating
series but a series that goes on for ever. If you divide the number 1 by
7 in decimal you get a similar effect − 0.142857 142857 142857 .... !
This happens because 7 cannot be ‘built up’ from the prime factors of
the number base, 10 (whose prime factors are 2 and 5). In decimal, the
number 16 can be ‘built up’ by multiplying four lots of 2 together so
you will find that 1 divided by 16 in decimal does terminate; in fact
the answer in decimal is 0.0625 exactly. Numbers with denominators such
as 25, 50, 64 and 128 will terminate in decimal because they can be
‘built up’ from the product of powers of 2 and 5.
5.9
The number base for binary is 2 and it is a prime number. Hence, the
only numbers with mantissae which terminate in binary have denominators
which are integer powers of 2 such as 2, 4, 8, 16, 32, etc. Those
numbers which have mantissae which terminate in decimal because the
divisor is divisible by 5 (one such number is one tenth, 0.1) will not
terminate in binary. If the true, correct series of digits for the
mantissa does not terminate then the series has to be truncated (chopped
off!) and the number held in the computer is approximate. When you add a
lot of similar numbers together (I have added ten lots of truncated
0.1’s) then all the ‘lost’ bits add up to something small but
noticeable. In the case of the example in [Zero01], the amount ‘lost’ by
truncating a single 0.1 is about 0.00000000000000001.
5.9
Now, such a small amount might seem trivial to you but, sometimes, it
isn’t. If you have the Archive monthly disc then load up the file
[Zero02] − a screenshot is shown opposite.
5.9
Slot A1 contains 0.1 and slot B1 contains 0.2. Slots B1 to B10 contain
$A$1 because I replicated $A$1 into those ten slots. Similarly column C
contains ten ‘copies’ of the value in A2. The <Ctrl LDP> value (Layout
Decimal Places) is F as before. In B13 I have sum(B1B10); in C13 I have
sum(C1C10). In D1 I have B1+C1 which is replicated down column D. You
will see that D13 contains the difference between the sum of the values
in the D column and the sum of the values in row 13. Of course, these
should be the same and you will see that they aren’t! There is a
difference in the 16th decimal place. Normally such a difference would
have no noticeable effect on the working of your sheet but, if D13
contained:
5.9
if(sum(D1D10)=(B13+C13), “Correct”,“Error”)
5.9
then the value returned would be “Error”!
5.9
I have had many discs (and letters) containing sheets that “don’t work”
because two values that should be equal aren’t.
5.9
There is a variant of this rounding problem. The int() and mod(,)
functions also give ‘wrong’ answers in some cases. I had trouble with
mod(#,7) in my original calendar program where I was trying to find the
day of the week; sometimes I was one day out! What is the answer to this
‘incorrect rounding’ problem? Well, before the days of computers, in
fact many hundreds of years ago, mathematicians doing ‘sums’ in decimal
were aware of the problem. The ‘classic’ answer is to keep track of the
rounding errors and make allowances. With a computer it is a bit harder.
You should add 0.5 before using int() so, for example, if you want the
integer part of the number in D100 you do not use int(D100) but int(D100
+ 0.5). Similarly with mod(,). If you want the modulus of the number in
D100 (ie the remainder) after dividing by 7 then use mod(D100 + 0.5,7).
There are similar considerations if you want to round a number (money
for example) to say 2 decimal places. First add 0.005, multiply by 100,
find the integer part and finally divide by 100. The number in D100,
rounded to 2 decimal places is int(100*(D100 + 0.005))/100.
5.9
From the printout; you will see that, in PD 4, the number 0.1 is not
held as a truncated number but has been rounded up to
0.10000000000000001, an exact binary number. In PD 4, you will find a
function called round(,). The round(,) function executes the formula I
have given in the previous paragraph but it takes up less space on the
disc and it ‘works’ more quickly.
5.9
In conclusion
5.9
Please continue to write to me at the Abacus Training address given on
the back inside cover. If you have a problem or comment of more than a
few lines, or if you have an example file, it does help me to understand
exactly what you mean if you send a disc file rather than a printout. It
also helps me to make your comment or application available to others
much more easily.
5.9
Many thanks for all your letters. I enjoy them. A
5.9
5.9
Language Column
5.9
David Wild
5.9
Acorn DDE − I was just beginning work on this article when the current
issue of Risc User arrived, together with the associated disc. On the
disc is a sample application which includes the “FrontEnd” and
“DDEUtils” modules which are normally only available with either the
latest version of the ‘C’ compiler or the assembler. There is also a
very much better Pascal compilation tool than the one I put on a recent
disc. The “Risc User” tool has been extended to allow “throwback”, which
means that compilation errors will lead you back to the right place in
the source program ready for corrections to be made. At the moment the
throwback routine only works with SrcEdit but even with this restric
tion, the £4.75 that the disc costs is more than justified by the
extension of the Archimedes capabilities.
5.9
By the use of this software, it will be easy to produce such programs as
file filters which will multi-task without the program itself needing to
know anything about windows and polling. Any other person to whom these
programs are to be distributed will need to have the necessary modules
but I presume that Acorn will be prepared to licence them to others in
the same way as they have done for Risc User. For non-commercial use, it
will be necessary to suggest that your users buy a copy of the disc; one
purchase will support all the programs written in this way.
5.9
In the long run, I hope that Acorn will consider these modules to be an
essential part of RISC-OS so that every Archimedes user has access to
them without needing to think about it.
5.9
Language choice
5.9
In my last article, I said something about language snobbery, especially
in regard to Basic. There still seems to be some of this about but I
think that is diminishing and will go on doing so as Basic becomes more
powerful. That said, we must accept that there are disadvantages in
using interpreted Basic for programs to be distributed. One is that the
whole of the source code must be included, leading to the temptation to
use very short variable and procedure names thereby increasing the risk
of subtle errors caused by accidental re-use of variable names. Perhaps
more serious is the fact that your source code is available to those who
would improve it. While it would be a brave programmer who would argue
that his or her program could not be improved, it is very difficult to
provide support if there is a risk that the program being supported is
not the same as the one sent out. I have had this experience with
programs written for work and it is extremely frustrating.
5.9
How much this matters depends on the amount of support you really have
to give; with magazine discs where you need only offer to put out an
amended version on the next disc, it is not as serious as with a program
that users have bought to do a useful job.
5.9
A Basic compiler brings the language up on a par with ‘C’ and Pascal for
the normal run of programming work.
5.9
Lisp and its derivatives such as Scheme, while they can be used for
ordinary programming, are really for specialist requirements although
they can be very interesting to use.
5.9
On a recent Archive disc there has been a new language, ‘J’, which is a
descendant of APL. This was the “language of the future” some years ago
but it still seems to be as specialised as Lisp. Part of the problem, I
think, was that there was a time when it was grossly oversold. There
were claims that, with APL, you could write a program in an hour while
with Cobol it would take four weeks. While it might have been true of
some specialised programs which I wouldn’t have tried to write in Cobol
anyway, I am sure that it wasn’t true of most of the programs with which
I worked.
5.9
There does seem to be a tendency for some people to suggest that program
design is not very important and the examples they use come from the
mathematical sector. Here, the design work is often done in the
mathematics itself. In general use, program design is a large part of
the work and no language can eliminate that. A
5.9
5.9
FaxPack
5.9
Ned Abell
5.9
FaxPack, Computer Concepts’ fax card for the Archimedes, is a really
remarkable product that nearly didn’t make it. It first saw the light of
day about three years ago and needed British Telecom approval to be
connected to the UK telephone system. This approval had to be re-sought
even if there were minor changes to a product, yet the product had to be
developed to get approval!! Faced with national criticism, BT simplified
the procedure and FaxPack has finally emerged.
5.9
Knock Knock
5.9
The package contains a modem card, an excellent 96 page manual, a disc
of software and a telephone line splitter. Fitting it to my 300 series
was not a problem as I had a backplane to plug it into, the only other
connection being to the sound circuits on the main board via a header
plug.
5.9
On most machines the sound link allows you to monitor the calls being
sent or received and this is very useful. However, this isn’t possible
on an A3000 and, in addition, you will need a metal housing for the
podule.
5.9
Computer Concepts advise a minimum of 2M of memory and a hard disc
although I’m coping with a floppy drive system. The manual advises
checking the podules and then connecting to the phone line. This is
where the passive splitter could be useful. For those outside Britain,
the 1.5 metre cable is terminated with a type 431A standard line plug −
a local telecom dealer may be able to offer an adaptor.
5.9
Open the Box!?
5.9
The software is one disc full of applications. There is !FaxMngr which
controls the configuration of the podule and the receiving of Faxes and
!PrinterFP which sends the faxes. Then there are other utilities such as
a good address book, !Faxes which controls the display and filing of the
faxes and a copy of LQEmulate.
5.9
“..now this is clever..”
5.9
Where CC have been super-clever is that they haven’t built a dedicated
fax podule! What they have built is a modem card that works at fax
speeds and they have coupled that with a ROM full of software that does
the real business of controlling the modem and assembling the fax image
and they have added desktop software that controls the ROM − thus it is
an open system.
5.9
Where this system differs from a conventional fax machine is that, in
due course, the software will be upgraded to support file transfers to
other FaxPacks − with error correction and automatic detection of a
distant FaxPack. Existing faxes work without correction, so CC have
released the unit as a straight-forward fax and will upgrade the
software later to support file transfer. The technical manual will also
become available at this point. This file transfer opens up several
exciting possibilities in that you will be able to transfer data to and
from remote machines and also control them. For example, I would be able
to write this article and fax it to Paul’s machine rather than post the
disc or fax a newsletter to the printers. I could also develop software
in cooperation with others in different parts of the country and swop
files with ideas − the list is endless.
5.9
Saving money
5.9
A word here about how you connect up to the telephone network. Because
faxes are used more and more in business, it makes sense to consider a
dedicated telephone line for the fax. However, this is expensive and may
not be justified in a lot of cases. If you work the FaxPack manually,
you must remember to leave the computer connected to the line when you
are out − but then do you give priority to the ansaphone or to the fax?
5.9
The answer is to use a fax splitter. This means that the incoming line
goes to the primary socket (which, in U.K. law, is the phone company’s
property) and then an electronic splitter is used to create two more
outlets, one for phone and one for fax. If a caller rings in, he hears a
recorded announcement and then the call is diverted to the fax socket if
the unit hears fax tones. If there are no tones detected, it is routed
to a phone (which could be an ansaphone).
5.9
There is also another type of splitter that doesn’t have an announce
ment. These units can also detect conventional modem tones.
5.9
Whatever you use, you will need a new style square socket for the fax.
If you are having one put in, remember that you can choose to rent only
the line − BT to remove their instrument on request and allow you to
supply your own phone. The reduction in rental will soon cover the cost
of the new phone.
5.9
Receiving − no paper
5.9
The FaxPack does more than send and receive faxes but it does do this
incredibly well. Because it is an electronic system, you don’t need
paper unless you have to print something out. This means that the
definition of the received fax can be very good − down to 6pt, which
would be very difficult to read on a conventional machine. You also save
money on Fax rolls. The disadvantage is that you have to leave the
computer switched on. The !faxes utility allows you to read your fax or
discard it or, by using the supplied edit utility, turn all or parts of
it into sprites for inclusion in other projects. Some character
recognition software could be just what’s needed here!
5.9
To receive a fax, you run !FaxMngr, configure it for your system,
nominate a directory for your incoming faxes and wait for a call. The
system will auto-answer after up to 255 rings or you can answer the
phone and set it off manually. You can set the software to display it on
the screen if you prefer. As this is handled in the background, it is
possible, according to the manual, to play “Lander” whilst this is going
on − but you could also be doing other more useful tasks!
5.9
Sending
5.9
Sending a fax is done very cleverly. You can use your favourite
application to create the document, then you simply use !PrinterFP as
your printer driver and “print” the document. This turns the printed
page into a fax and sends it. In RISC-OS 2, only one driver can be used
at a time so you put !PrinterFP up only when you need it. In RISC-OS 3,
however, you can select which printer driver is currently active, so you
can easily toggle between hard copy and sending a fax. This is why there
are two fax utilities − !FaxMngr and !PrinterFP, as it is possible for
those of us with good old RISC-OS 2 to receive faxes whilst using
another, separate “paper” printer driver.
5.9
Dialling
5.9
FaxPack can use either pulse and tone dialling and detects tones from a
digital exchange.
5.9
If, in any document, in any application, you include the text: {0442
231632}
5.9
then !PrinterFP will input that number for dialling and dial it (if set
up to do so) and replace the brackets and the string in the document
with spaces as it is sent. Your document will then appear, in this case,
on Computer Concepts’ fax machine. This is a very clever idea as it is
application-independent. You can also dial by clicking on a field in the
address book, manually, or by typing the number into !PrinterFP. Be
careful if you are using Impression because, when importing text, it
recognises curly brackets as a command and may strip them out.
5.9
One short-coming of the dialling software is that you can’t configure a
pause in the dialling. This could be required if the FaxPack were on an
extension of an exchange which needed a pause in order to give time to
access an outside line. Also, a major omission is that the !FaxMngr
configuration should accept a customer number and dialling code and user
prefix for systems like the UK Mercury low cost trunk connection. This
would allow the user to configure computer recognition of calls capable
of being dialled at lower cost. Because the computer is left on, it
will also be easy to send faxes automatically at different times to use
cheap rate calls to other time zones.
5.9
Addresses
5.9
The address book is very useful and can be set up to either pass the
phone or the fax number to the FaxPack. This will allow auto-dial of the
fax number for transmission or auto-dial of the number for voice
transmission.
5.9
So, if you find the entry for “Archive” and click on the phone number
and the phone action is set to the voice dial option, FaxPack will dial
and you will hear it ring on the computer (not on an A3000) and when it
is answered, you pick up your phone and talk.
5.9
The software could be improved here as the whole book is set with either
fax or voice dial action, so you can’t have both systems in the same
book − you need a Fax Address book and a Voice Dialling book. Logically,
you would have each number set with the different action. All the data
is held in a file using up to 15 lines of text for each entry so it is
very easy to create new address books. There is also a comprehensive
search facility to find a contact by any field.
5.9
!LQEmulate is included because some text preparation systems won’t talk
to RISC-OS drivers so it would be impossible to send a fax from these
programs. As Laser Direct and FaxPack share a similar interface,
!LQEmulate converts the Epson control codes from Twin, Basic, FWP,
Wordwise and the Inter series into a driver for FaxPack.
5.9
Merging
5.9
There is also the !PrinterFP option to send output to a file. If you had
to send one fax to several people, it could be prepared with this
option, then !PrinterFP could be switched from file to fax and the file
dropped onto the icon, dialling each call manually − but there is a
better way!
5.9
!PrinterFP will support the syntax
5.9
{- command}
5.9
where merge-command is suitable for your mail-merging system. For
example, for those using !Importer from the Impression Business
Supplement, the command would be:
5.9
{getfield #}
5.9
where GetField # is the fax number field in the data base. “Printing”
this message many times to the FaxPack means that each time it is sent,
it looks up the next person on the list so it is possible to auto-dial
lots of clients with individually addressed faxes!
5.9
Back patting time
5.9
Do you need a fax machine of this complexity? Well, I think that it is
no bad thing to have more facilities than you currently need. In any
case, despite its advanced capabilities, FaxPack is easy to use with a
very clearly written manual. I bought FaxPack for the future additions
of file transfer but it is so useful to fax messages or reminders to
people, even including pictures, that it is paying for itself even
without the file transfer.
5.9
It is a business tool I am really going to use − I’ve now linked it into
!Prophet to fax orders automatically to my suppliers. Also, communicat
ing off-peak with the USA saves me money.
5.9
This type of forward-looking hardware and software can’t fail to develop
the appeal of the Acorn range − Computer Concepts should be rightly
pleased with themselves. It is a highly rated and worthwhile addition to
my computer which will be even better when the file transfer option is
finished.
5.9
FaxPack costs £299 from Computer Concepts plus £10 courier delivery −
that’s £363.08 including VAT (or £345 through Archive).
5.9
The Technical Manual will be £10 (no VAT) when the software is final
ised. A
5.9
5.9
Programming the WIMP − Interactive Help
5.9
Chris Johnson
5.9
One of the selling points of any WIMP environment is ease of use and the
presentation of a common interface. Acorn has, at various times,
encouraged programmers to follow specific guidelines when producing
RISC-OS software. One of the applications provided by Acorn as part of
RISC-OS is !Help. This is on one of the application discs supplied with
RISC-OS 2 and is in the RISC-OS 3 ROM. I am sure that most programmers
will have tried this out at sometime or another. It may be installed on
the icon bar and clicking on its icon opens a window which can display
up to four lines of text. This text relates to the object (window or
icon) which lies under the mouse pointer and is updated in real time as
the pointer moves. Many of Acorn’s own applications will continually
display helpful text while !Help is installed. However, very few third
party applications, and even fewer PD or shareware applications,
interact fully with the !Help application. This is not altogether
surprising, since there is no information even in the Programmers’
Reference Manual on how to go about cooperating with !Help. It can also
be quite time consuming to provide comprehensive help in a large
application.
5.9
WIMP messages
5.9
Articles on WIMP programming appear regularly in Archive. See, for
example, the current series by Darren Sillett (4.8, 4.10, 4.12 and 5.5).
Therefore, I do not propose to deal at great length with general aspects
of programming the WIMP but only to develop the subject sufficiently to
put the current topic within context. Many WIMP programmers will be
familiar with much of the following but I hope they will bear with me. I
will give enough detail to allow any WIMP programmer to implement
interactive help and, at the same time, include sufficient background to
interest anyone who is just venturing into the world of WIMP program
ming. Since the routines are designed to be inserted into other
programs, I have not included any line numbers. (We all use text editors
and no GOTO’s anyway, don’t we?)
5.9
The essential core of any multi-tasking RISC-OS program is the polling
loop. This takes the form
5.9
REPEAT
5.9
PROCpoll
5.9
UNTIL finished%
5.9
The program continually calls the routine PROC poll, which is the
program’s way of asking the WIMP manager to tell it what is happening.
The operating system returns a stream of events to the program relating
to mouse clicks, key presses, opening and closing windows and so on.
Each event has a unique identifying number. Let us write a skeleton
procedure for dealing with the events (see below). The program calls
SYS“Wimp_Poll” with the address of a parameter block in R1. I have
assumed that a block of memory of 256 bytes has been reserved using DIM
and that the address is in block%. The value passed in the variable
mask% allows us to tell the WIMP not to bother us with certain events.
If mask%=0 then every event, including NULL events, is passed back. The
operating system returns the event number in the variable reason% and
stores all the details about the event in the block of memory. What it
actually stores there depends upon the type of event.
5.9
The events which interest us at the moment are 17 and 18 which are, in
Acorn notation, User_Message and User_Message_Recorded. These are very
similar except that, in the case of User_Message_Recorded, the originat
ing task expects an acknowledgement to its message. It is through the
passing of messages that different multi-tasking applications communi
cate with each other.
5.9
DEF PROCpoll
5.9
LOCAL reason%
5.9
SYS“Wimp_Poll”,mask%,block% TO
5.9
reason%
5.9
CASE reason% OF
5.9
WHEN 17, 18 PROCreceive_ message(block%)
5.9
ENDCASE
5.9
ENDPROC
5.9
The message block
5.9
What does the block of data contain when we receive a message? The word
at block% + 16 contains a number detailing the message action. The
message itself (if there is one) starts at block% + 20 and the total
length of the message block, rounded up to a word boundary if necessary,
is held in the word at block%. In block% + 4 is the task handle of the
originator of the message and, in general, the words at block% + 8 and
block% + 12 contain unique references to the messages generated by the
WIMP so that sender and receiver can identify particular message
sequences to each other.
5.9
To summarise:
5.9
block% + 0 length of message block
5.9
block% + 4 sending task handle
5.9
block% + 8 my_reference
5.9
block% + 12 your_reference
5.9
block% + 16 message action
5.9
block% + 20 message text or data
5.9
How we decode the message
5.9
The first thing we do is look at the message action in block% + 16. One
action which all tasks must respond to is 0, which is the quit message.
On receiving this message, a task has no choice but to tidy up and close
itself down. Message actions 1 − 7 all involve loading and saving of
data by dragging icons between filer windows and applications or double
clicking on an icon in a filer window.
5.9
A message action of &502 is a request to our application to send some
help text to the !Help application. Most applications simply ignore this
message action and !Help then can do little more than display an empty
window. We are going to be much more user-friendly and respond to this
request.
5.9
DEF PROCreceive_message(b%)
5.9
CASE b%!16 OF
5.9
WHEN 0: finished%=TRUE
5.9
WHEN &502 PROChelp_ requested(b%)
5.9
ENDCASE
5.9
ENDPROC
5.9
We respond by sending a message which contains our helpful reply, back
to the !Help application.
5.9
Constructing our reply
5.9
Let us take it step by step. The contents of the first part of the
message data block have been outlined above. The message data sent as
part of message action &502 contains all the information we need, i.e.
the mouse pointer co-ordinates, the mouse button state and the window
and icon handle, if any, under the pointer. For this article, we will
make use only of the window and icon handles. When we send the message
back, we will use the same block of memory to contain the message.
5.9
1. To identify the message as a reply to the help request, we must
give it a message action number of &503. This will go in block% + 16
5.9
2. We copy my_reference into your_reference.
5.9
3. We will identify the window and icon so that we can send the
appropriate message. These are contained in block% + 32 and block% + 36
(the data block starting at block% + 20 is of the same form as that
returned by SYS “Wimp_GetPointerInfo”).
5.9
4. Construct the message text and place it at block% + 20.
5.9
5. Place the length of the message (rounded up to a multiple of four)
into block%. The length is the length of the message text + 1 for the
carriage return + 20 for the message header. The simplest way of
rounding up to the next word boundary is to add 4 to the total length
and then mask off the lower two bits of the result. We do this by
AND’ing with NOT 3 (i.e. in binary this is:
5.9
%11111111111111111111111111111100).
5.9
6. We are now ready to send the message, as type 17, since we do not
expect any reply. When sending a message using SYS “Wimp_ SendMessage”
remember that R0 contains the message type (17 here), R1 the address of
the message block. R2 contains an indication of the destination of the
message. In this case, R2 contains the task-id of the intended recipient
(!Help) of the message, which is obtained from the message block (block%
+ 4) we received requesting help.
5.9
The Basic code to do all this is given below.
5.9
DEF PROChelp_requested(block%)
5.9
LOCAL help$
5.9
LOCAL window%, icon%
5.9
block%!16 = &503
5.9
block%!12 = block%!8
5.9
window% = block%!32
5.9
icon% = block%!36
5.9
help$ = FNget_help_text
5.9
(window%,icon%)
5.9
$(block%+20) = LEFT$(help$,232)
5.9
!block%=(LEN help$+25) AND NOT 3
5.9
SYS“Wimp_SendMessage”,17,block%
5.9
,block%!4
5.9
ENDPROC
5.9
What does FNget_help_text() look like? It is a simple matter to produce
some help text depending upon the window and icon context by using
nested CASE statements. Some skeleton Basic code is given below.
5.9
DEF FNget_help_text(w%,i%)
5.9
LOCAL h$
5.9
CASE w% OF
5.9
WHEN window_1%
5.9
CASE i% OF
5.9
WHEN icon_1%
5.9
h$=“This is the help
5.9
text for icon one“
5.9
REM the rest of the icons
5.9
ENDCASE
5.9
REM the rest of the windows
5.9
ENDCASE
5.9
=h$
5.9
The main task now for the implementer is to come up with a set of useful
help messages for all the windows and icons in the program.
5.9
Help message guidelines
5.9
The maximum length of a piece of help text is fixed by the total length
(256 bytes) of the message block, including the message header. In case
I get carried away when writing help text, I include in
PROChelp_request() an instruction to truncate the text if it exceeds 232
characters.
5.9
Fortunately, we do not have to worry about any formatting of the text,
since !Help does this to fit the text to the size of the interactive
help window, putting line breaks in at suitable spaces and coping with
window resizing. (You may have noticed while using !Help that the window
does not resize in the ‘normal’ way, i.e. the width and height cannot be
changed independently. This is so that all the message can be
displayed.)
5.9
If you specifically wish to force a newline to occur at a certain point
in the text, use the |M method to include the newline character. For
example “This is one line of text.|MThis is another.” would appear in
the Help window as:
5.9
This is one line of text.
5.9
This is another.
5.9
Remember that you can only display a maximum of four lines of text,
however short they may be.
5.9
I hope I have given sufficient information to allow WIMP programmers to
provide interactive help in their applications. I am always impressed by
the speed at which even ARM2 based machines update interactive help
messages in real time.
5.9
In an extension to this theme, in a further short article, I will
outline how any application can make use of the MsgTrans module to
extract help text, error messages, etc. from a single text file which is
held as a resource of the application, in the same way as template and
sprite files are resources of the application. A
5.9
5.9
Scanning Negatives and Dias
5.9
Tord Eriksson
5.9
In this third piece on scanning with the ScanLight Junior 256, we will
deal with scanning negatives. Dia-positives are not mentioned because
they behave exactly like negatives but in reverse! (See also Archive 5.4
& 5.5.)
5.9
The negative side
5.9
Computer Concepts tell the buyer of their scanner that it can even be
used for scanning negatives and turn those into positives. This is
perfectly true but not very useful as a negative normally has an
enormous grey-scale that no hand-scanner can reproduce.
5.9
The reason why a negative has a greater density scale than any photo on
paper is simple. The negative is made to be enlarged and as you enlarge
anything the contrast goes down, just as things becomes fuzzier and
fuzzier with increasing distance.
5.9
The main advantage with doing enlargements of vector graphic objects
(draw objects) with the help of computers is that the grey areas keep
the same perceived greyness, as the black dots are always the same size.
They only increase in number.
5.9
If you enlarge photographically, you will find that the contrast goes
down as you increase the size, as the raster dots becomes bigger and
bigger. If you decrease the size of the graphic then the contrast goes
up − so much, sometimes, that grey areas become solid black.
5.9
The positive side
5.9
Scanning a negative is only possible if you can control the back-light’s
intensity. The negative has to be big enough; 6 × 6 cms negatives are
ideal. If you scan with the negative on top of a white sheet of paper
with no back lighting, you effectively double the contrast which is not
recommended!
5.9
The best light source is a light box that can be regulated in intensity
(taking out one of the fluorescent tubes made mine perfect!) or a
window. If you use a window, hang a piece of paper on the outside of the
glass so that you can create a bit of semi-shadow.
5.9
To get a usable result, you must find whereabouts on the light box a
negative will be best scanned. If the light is just a bit too bright,
nothing will be visible and if it is just a bit too dark, you will end
up with a black strip! When you use the window you have to find where
the light is OK, maybe by adding another piece of paper on top of the
first!
5.9
When the scan is OK, you just click on the inverse icon and voilá, you
have a positive picture. This will look quite awful as you will see lots
of irritating scan lines across the picture (In monochrome B&W this will
not be a problem).
5.9
Conclusion
5.9
The resulting grey-scale picture is really not good enough for publi
cation but could be used as a rough and ready indication of what picture
should go where in your publication, so that the print shop knows what
to do. For good results, I recommend making a contact copy of the film
and then scanning the copy. It is a much better and easier solution! A
5.9
5.9
Chameleon
5.9
Ian O’Hara
5.9
Chameleon is a program which allows the user to alter the colours in
drawfiles. Not very amazing you may think − nothing more than you could
do with Draw itself, but just try changing all the colours on a very
complex drawfile with lots of objects. It is not that easy, especially
if you want to replace a colour globally. Chameleon allows you to do
other things that Draw won’t do − but more of that later.
5.9
Chameleon comes on a single disc and is protected in 4Mation’s usual
way, i.e you cannot copy the disc until you initialise it by typing in
your name. It is a fully RISC-OS compliant program.
5.9
Once installed on the icon bar, it is activated by dragging a drawfile
onto it. Two windows pop up, one containing the drawfile and the other,
the various tools that can be used. The tools are split into two rows.
On top are the tools concerning the area involved and below the type of
operation. Below this are boxes showing an enlarged copy of the area of
the drawfile currently under the pointer and one containing the current
colour selected.
5.9
Colour changes
5.9
Colour can be changed locally which means that only the object directly
under the pointer is affected. It can be changed globally so that every
time that colour occurs it is changed. The other three options involve
drawing a box on the drawfile around the objects that are to be changed.
These options are: within the box, under the box and outside the box.
The difference between the first two is that ‘within’ only acts on
objects that are wholly within the box whereas ‘beneath’ will change all
objects which overlap the box.
5.9
Seven types of operation are possible. The first is a straight colour
replace and is the one I tend to use most. The next two options concern
changing the colour but keeping the same shade. These will either
produce a greyscale image or one in a colour of your choice. The fourth
and fifth options will lighten and darken the image and the last two
will alter the saturation of the colour. Only the first of these
operations would be possible within Draw without using Chameleon.
5.9
Colour selection
5.9
Choosing the colour to use is done on a separate window. There are three
ways to pick the colour. The first two use the standard windows which
are used in most programs to choose and edit colours found. The third
method is one that I particularly like. This uses a colour cube. You set
the red level and the window provides a display which adds increasing
levels of green and blue in the horizontal and vertical directions. It
is the best way I have yet seen for picking related colours. No longer
do you have to play with sliders or take pot luck on the normal 256
colour palette. You can also see how shades go together. This has been
very useful when used with the SmArt Fashion disc.
5.9
As well as changing the fill colour of path objects, it is possible to
change line colours, text colours and sprites. Chameleon treats sprites
within drawfiles as single objects, so if a colour is changed then this
is done globally within the whole sprite. To help change the colour of
lines, you can use the shift key which has the effect of picking a line
which is often very thin regardless of the magnification. Holding down
the <ctrl> key has the same effect for text.
5.9
Menu options
5.9
Both of these sets of operations are also found on the main menu. Other
options on the main menu are Tools and Save. The first option on the
tools submenu allows you to lock colours so they can’t be changed by
accident. The next two are to do with the size of the drawfile and the
magnification with which it is displayed. Below this are facilities to
undo and redo actions. This facility allows you to go back and forward
through several changes. I have not yet found the limit. It is not
possible to use this facility with 256 colour sprites.
5.9
Colour separations
5.9
The Save menu allows the resulting file to be saved in various ways. The
simplest is as a straight drawfile. The other two options allow colour
separations. The first will produce a directory containing four files
for Cyan, Magenta, Yellow and Key. These are used by commercial printers
to produce full colour prints. It is a pity that more art packages don’t
include this facility. The second separation option will produce a
directory containing files of each colour used in the drawfile. You get
a warning if more than four colours are used and there is a limit of 64.
Quite useful for producing Japanese style woodcuts (or multi-layer
p.c.b.’s Ed).
5.9
The future?
5.9
Chameleon is not being left as it is, 4Mation are still working hard on
it. One option being planned for it is graduated fills. How the
resulting image will be stored, I am not sure. If it produces a whole
series of drawfiles, it will result in a very large file. Maybe Acorn
should look at using Display PostScript in future machines. Don’t all
write off to 4Mation about this yet − when I spoke to them recently, it
appeared to be still at least 2 months away.
5.9
Conclusion
5.9
Whether Chameleon is worth buying depends on how many of its features
you are likely to use and how much you value your time. I have found the
program very useful and feel that it is well worth its £25 price tag. A
5.9
5.9
Power Search: A Quiet AI Revolution − Part 3
5.9
Michael Houlder
5.9
Most of us are familiar with the simple search and replace functions
provided by most word and document processors.
5.9
We might have a document with references to Mr Jones which we wish to
change to Mr Smith. We could read through the text of the document
changing each instance of “Jones” to “Smith”. If the document was
lengthy or complex, we could spend much time editing the text manually
without a guarantee that we had changed every instance required.
5.9
Better, we should use an available search and replace function. This
will present each instance of “Jones” in the text and invite our consent
to its replacement with “Smith”. The function takes a fraction of the
time of the manual process as our attention is focused only on instances
of “Jones”, nothing else. The function also increases the chances of a
correct modification of the document as, again, our concentration is
directed explicitly and exclusively to each instance of “Jones”.
5.9
If a ‘global’ search and replace option is available, we may be
sufficiently sure of our document to choose to use the option and have
all the changes from “Jones” to “Smith” made fully automatically. The
changes, in this case, will not be checked individually by ourselves.
Nevertheless, it is guaranteed that every instance of “Jones” is
converted without exception.
5.9
Definitely something else again
5.9
By ‘power search’, I mean something much more powerful than the simple
function given in this illustration. Power search was offered on the
Archimedes first by Twin, the original non-multi-tasking text editor. It
is now offered on the desktop by !SrcEdit, the new RISC-OS text editor,
which is supplied as part of the Acorn DDE.
5.9
Its background comes from the very strong software development environ
ment that is provided by Unix. In particular, it relates to the use of
‘regular’ expressions to define search patterns by programs such as LEX,
GREP, VI, etc.
5.9
In the illustration of a simple search and replace function, “Jones”
acted as a search pattern to be matched by similar patterns occurring in
the document. There is no ambiguity about this fixed and constant
pattern. The only thing that will match the pattern is the string
“Jones”. The match depends only on that string. Nothing in the surround
ing context of the document will make any difference. Hence, the
replacement of “Jones” by “Smith” is context-free.
5.9
The power of power search
5.9
!SrcEdit provides a language for describing search patterns which are
general and abstract. Such patterns are capable of matching large
numbers of radically different data patterns which share some abstract
characteristic.
5.9
For instance, the search pattern “^@” will match with an infinite number
of different data patterns. Two examples are: “1” and “xxxxxx”. These
are radically different: a repeated single character string composed of
a number and a multi-character string composed of a single lower-case
alphabetical character.
5.9
However, they share two abstract characteristics. They are both strings
of length greater than one. Both characters, ‘1’ and ‘x’, are instances
of the set of alphanumeric characters used by many programming languages
to form variable names. These two shared abstract characteristics are
captured exactly by the search pattern. ‘^’ identifies the property of
non-zero length. ‘@’ stands for the set of alphanumeric characters.
Hence the pattern describes the class of non-empty strings formed just
by alphanumeric characters.
5.9
Search sequences may be made from indefinite length components, such as
“^@”, and fixed components, such as “Mr ” or “ Jones”, placed together.
The search sequence “Mr ^@ Jones” allows replacement by “Smith” only in
those cases where the first name of Jones is given. The replacement is
dependent on the context.
5.9
Replacement using power search is, therefore, context-sensitive.
5.9
A companion replacement pattern language defines the replacement pattern
which does not have to be fixed as “Smith”. It may refer to all or part
of the match actually found by using either the ‘found string’ symbol
‘&’ or a ‘numbered field’ symbol such as ‘?0’.
5.9
Call the combined search and replacement patterns a transform and write
it with connecting and terminating symbols, ‘=>’ and ‘;’, as follows:
5.9
search_sequence => replace_ sequence ;
5.9
Quotes will mark the beginning and end of both search and replacement
sequences. Any quote contained inside either sequence will be marked as
natural using the ‘normal’ operator: e.g. \“.
5.9
The transform “Mr ^@ Jones” => “?0”; replaces any string such as “Mr
Simon Jones” with the string “Simon”. The numbered field in the
replacement pattern refers to whatever is found to match the indefinite
length component “^@”. The transform isolates and, hence, identifies the
first name of any Mr Jones. Such patterns can be used to extract
information from data rather than just change it.
5.9
Replacement using power search is, therefore, informative.
5.9
Interpretation of ‘most’ repetitions
5.9
The interpretation of the ‘most’ repetition symbol ‘%’ was treated
primarily as an exception in the previous parts of this article. It is
an important function and needs to be defined more precisely.
5.9
Any ‘most’ repetition, such as “%a”, must occur either followed by
another search sequence component or as the last component of a search
pattern sequence. If it is followed by another component, “%a” is to
interpreted identically as the 1 or more repetition “^a”.
5.9
If it is the last or only component, then it will be matched by the
maximum possible match for “^a”. That is, there must be at least one
match for “a”; i.e. at least one character ‘a’. However, the repetition
will continue to match however many more characters ‘a’ follow the
first.
5.9
“^a” and “*a”, similarly in the last position, take the opposite or
minimum match. “*a” here will always match the empty or null string.
“^a” will match just a single character ‘a’. So, given the data string
“baaaaa” as the next to be searched, the repetitions in the last
position of a search sequence match as follows:
5.9
• “b%a” matches “baaaaa”
5.9
• “b^a” matches “ba”
5.9
• “b*a” matches “b”
5.9
There are some problems with the scope of the expression denoted by “a”
in this definition. !SrcEdit itself supports only a restricted class of
expressions. That is, “%a” behaves as defined here only for natural
printable characters given without operators such as ‘a’ itself and for
the pre-defined set symbols ‘@’ and ‘#’. For cases such as “%!61”, “%[a-
z]”, “%~a” or even “%\a”, it behaves as the 1 or more repetition “^a”.
For the search element “%.”, it reports an error and the search and
replace function stops processing
5.9
There appears to be no real justification for these restrictions. My
compiler tests out fine so far without them and supports all cases
including “%.” This latter repetition is particularly important as will
be seen later.
5.9
Acorn’s examples
5.9
The interface to the search & replace function in !SrcEdit provides
three styles of function: interactive, global and count. ‘global’ is the
automatic application of a search & replace transform to all matching
instances. ‘interactive’ describes the presenting of each matching
instance to the user for confirmation before replacement. ‘count’
extracts information from the data; namely, the count or number of
matching instances.
5.9
Five examples are given by Acorn to define the possible uses and
applications of the search and replace function, as follows:
5.9
• “[a-z]” => “”; As a transform, this would cause all characters from
the range ‘a’ to ‘z’ to be deleted. Using the ‘count’ function, the
number of lower-case characters throughout the document will be given
instead.
5.9
• “%@” => “”; The ‘@’ is a symbol standing for the set of alphanumeric
symbols: ‘a’ to ‘z’, ‘A’ to ‘Z’, ‘0’ to ‘9’, and ‘_’. Importantly, this
set excludes spaces, tabs, newlines and other word separating charac
ters. Hence “%@”, being the last and only component of its sequence,
matches with any word of any length. Using the count function, this
transform counts the number of words in a document.
5.9
• “%@” => “(&)”; Using the interactive or the global functions, this
transform surrounds each word with round brackets.
5.9
• “\#include \”h\.%@\“” =>
5.9
“#include \”?0.h\“”; Using the interactive or global function, this
transform re-writes the ‘include’ directives for an ANSI C source file.
It changes the string #include “h.stdio” into #include “stdio.h”. “?0”
maps to the first ambiguous field of the search sequence which is “%@”
and, in the case of the example string, matches with “stdio”.
5.9
In the expression for the transform, the quotes contained in the
directive surrounding the file name are written qualified by the
‘normal’ operator. The two patterns are then acceptable to both !SrcEdit
and my compiler.
5.9
• “~[ -~$]” => “”; The square brackets define a set of the range ‘ ’
(space) to ‘~’ together with newline. This set contains all printable
ASCII characters. Its negation with ‘~’ defines the set of non-printable
characters. Hence, this transform deletes all non-printable characters
from a document.
5.9
Evaluation of examples
5.9
It is not enough for replacement to be context-sensitive in the marginal
way detailed in an earlier paragraph. The language for defining the
context for replacement must be sufficiently rich to capture that
context in an expression without reliance on purely accidental factors.
5.9
Take the ‘include’ directive example above. Spaces are word de-limiters
for the ANSI C compiler and, hence, are invisible to the compiler. It
makes no difference whether or not there are spaces between the three
main parts of the ‘include’ directive string: “#”, “include” and
“h.stdio”.
5.9
Absence of such additional spaces is an accidental factor. The transform
example will match the intended targets only if those ‘include’
directives just happen to be written without additional spaces. Any
directives that contain extra spaces will be perfectly intelligible to
the compiler but will be missed by the transform.
5.9
The search language is quite capable of capturing the precise properties
that make all ‘include’ directives recognisable by the ANSI C Version 4
compiler. A better, but not perfect, search sequence is
5.9
“\#* include* \”h\.%@\“”.
5.9
However, the new search sequence is a complicated expression and will
become more so as various attempts are made to come closer to what is
required; a process of refinement.
5.9
A similar process of refinement of a description is implicit in the
second and third examples. The first of these counts the words of a
document. The second puts brackets round all words. The initial
description of words is given by the search sequence “%@”. This will
include numbers as well as names: e.g. “1” from “1. Item One etc”.
Should “1” count as a word to be counted or as a word to be bracketed?
Almost certainly not! We would expect to see a refinement of the
description of a word such as: “%[a-zA-Z]”; with, perhaps, the further
refinement “[a-zA-Z]%[a-z]” until the precise context required by the
document is captured.
5.9
The first example, counting lower-case characters, and the last example,
deleting non-printable characters, are good illustrations but are
trivial and do not use the potential of the language.
5.9
It is, perhaps, an attractive generalisation to say: either the uses of
the search and replace function in !SrcEdit are trivial or they involve
a succession of complex refinements of some context description.
5.9
A pattern programming model
5.9
Such a generalisation would be wrong. It fails to note that a number,
possibly large, of trivial steps can be combined to produce something
that is non-trivial.
5.9
The ability to extract information from data was mentioned earlier in
this part of the article. The utilisation of such an ability is a
programming task. This section attempts to say what sort of programming
is involved; to provide some sort of basic abstract model.
5.9
Unless a specific application function is created, such as ‘count’
mentioned in the Acorn examples, the use of a search and replace
function must depend on replacement. Search on its own is passive. At
best, it can direct the user’s attention to a particular instance.
Extraction of information is an active process. The information produced
as a result must be in a data form capable of being used by other
functions or systems.
5.9
Dependence on replacement means that the process is one of reduction in
the content of the data. Otherwise, there is no advantage in the
replacement; things would remain largely as they were at the start.
5.9
For example, take the task of extracting from a document the first names
of every man called Jones. We may assume that every individual in the
document is introduced at least once in a formal manner: e.g. Mr Simon
Jones. We use a similar search sequence to that mentioned earlier:
“Mr* ^@* Jones”. There may be references in the document to individuals
such as Mr Paul Smith, Mr Jones, or just plain Jones. The search pattern
will avoid matching with any of these unwanted instances.
5.9
The problem is that the first names corresponding to “^@” have that
property only by their context: “Mr ” and “ Jones. The parts of that
context are not uniquely associated with the target first name string;
their combination is. The initial reduction must be to eliminate that
context-sensitivity. This is brought about by introducing unique markers
immediately before and after any target first name string.
5.9
ASCII text is composed of only the first 128 of a total of 256 eight bit
character codes: using my symbol for Hex numbers, this is the range
“!00” to “!7F”. Hence, if the text is ASCII, the top half Hex numbers
from “!80” to “!FF” are available to act as unique markers since they
cannot occur in the text. Some word processors use what are called “top
bit set” characters from the top half range. In this case, markers can
be created out of digraphs or even trigraphs. A digraph is a pair of
characters, such as “XX” or “YY”, whose composition together does not
occur in the document. If necessary, a trigraph can be used; this is an
unusual composition of 3 characters. Digraphs and trigraphs are ways of
extending the set of symbols representable by an 8 bit code.
5.9
Thus the context-sensitivity of the required instances can be eliminated
by the transform:
5.9
“Mr* ^@* Jones” => “YY?1XX”;
5.9
The second ambiguous field in the search pattern will be matched to a
required first name. This is then mapped to component “?1” in the
replace pattern as numbered fields start with “?0”.
5.9
If the transform is applied to the document exhaustively until no more
instances can be found, the following statement is true: All and only
first names applying to Jones’ are in the form “YYzzzXX” where zzz is
any number, more than 0, of characters giving the name.
5.9
That is, the wanted information lies between digraphs “YY” and “XX” in
that order; while, on the other hand, there is unwanted data between
each pair “XX” and “YY” in that order.
5.9
This fact could be used in a second reduction to delete all data between
any pair “XX” and “YY”. But the first digraph in the document is “YY”:
to mark the first required name. There is no “XX” before this in the
document to mark the unwanted data that might exist before the first
required name. Similarly, the last digraph in the document is “XX”,
marking the last required name. There is no following “YY” to mark any
subsequent unwanted data.
5.9
Hence, a necessary pair of transforms introduce an initial “XX” and a
final “YY”. They use the ‘most’ repetition “%.” which represents that
string which is the remainder of the document.
5.9
“%.” => “XX?0”;
5.9
“%.” => “?0YY”;
5.9
!SrcEdit forbids the use of this search pattern. Those without access to
mine or a similar compiler must introduce the appropriate digraphs by
hand.
5.9
A final transform will delete unwanted data and the digraphs themselves.
It will introduce a newline character also to ensure that each required
first name occurs on a separate line, with perhaps an unwanted initial
blank line:
5.9
“XX*.YY” => “$”;
5.9
Through this discussion and from the example itself, we may derive, at
least, an initial abstract model of pattern programming. It has three
characteristics as follows:
5.9
• the destructive reduction of unwanted information through the use of
replacement
5.9
• the exhaustive application of search and replace transforms until no
more matching instances are found
5.9
• the application of lists of transforms, each of which is taken in
order and applied exhaustively.
5.9
The need for a compiler
5.9
The use of the word ‘compiler’ here is loose. The intention is to
distinguish !SrcEdit from other tools which run programs written in the
pattern matching language.
5.9
!SrcEdit can be called a simple interpreter for the language and suffers
from serious limitations for practical use as a stand-alone tool. It
performs excellently in combination with my compiler as it allows very
graphical, immediate testing of transform components. Once tested, these
can be incorporated into a disc file program for the compiler.
5.9
The fundamental limitation on !SrcEdit is that it accepts only keyboard
input. All search and replace patterns must be keyed in as individual
characters. There is no option for accepting input from any other
source, in particular disc files. This has a number of drawbacks which
are directly avoided by a compiler:
5.9
• The work involved in manual keyboard entry of a program is very
wasteful if the program is of any length and is to be used frequently.
5.9
• Required levels input accuracy cannot be sustained through complex and
lengthy programs.
5.9
• While separate file records of programs entered into !SrcEdit can be
maintained, the direct connection of these with active programs entered
through the keyboard is broken. Thus, it is difficult to undo steps in
the refinement of a program. Certainty in knowing which previous version
caused which effect has gone.
5.9
• Automatic creation of programs is not possible. Information may be
extracted from a document such as the list of first names in the example
earlier. Repeated use of a compiler via an Obey file and a higher level
pattern program can use this list of names to generate a whole set of
secondary programs which can be executed under the control of the Obey
file. Alternatively, control of the whole multi-layered process can be
given to !Make or !AMU. These are Acorn’s versions of Unix automatic
software project control systems.
5.9
• Modular development is an important feature of any software produc
tion. In effect, this is the composition or combination of programs.
Pattern programs can be combined either manually or automatically under
a compiler system. This cannot happen with !SrcEdit.
5.9
• !SrcEdit can run only simple transforms. A compiler will understand,
in addition, a number of program control operators such as conditionals,
procedures, REPEAT and REPEAT LIST... END and so on. These operators,
which can be nested, extend the range of possible programs enormously
without compromising the abstract pattern programming model mentioned
earlier.
5.9
An example using Impression
5.9
Particularly when various Impression documents are joined together, the
list of styles defined in the document can grow large. It is useful to
be able to determine easily which styles are actually used in the
document as opposed to just defined.
5.9
This example shows how a pattern program can be written to output a list
of the styles used in a document. It will involve use of the compiler;
but it will be possible to trace manually the program’s execution on a
small data file using just !SrcEdit.
5.9
Impression documents have an alternative ASCII text format called the
Document Description Format (DDF). Files in the DDF format contain, as
well as the document text, all Impression display and format commands.
The commands are expressed in a language for which the grammar is
supplied in the Impression manual.
5.9
This states exactly how the application of any style at any point in the
text will be described in the DDF file. It must be in the form: or .
The problem is to create a list of just the names of styles enclosed
within the curly brackets and quotes, such as Bold and Italic. This
problem is very similar to the example of finding the first names of
various Mr Jones’ mentioned in some document.
5.9
There are two additional problems however. Firstly, style names may
include spaces and other punctuation symbols: e.g. “Main Heading”, “Sub-
Heading”, etc. Secondly, instances of any particular style application
may be repeated many times. The list of style names produced by pattern
programming must keep any spaces etc. The list also must not contain any
repetitions.
5.9
Take the problem of repetitions first. Acorn’s DDE, as well as !SrcEdit
itself, contains a number of valuable support tools. One of these is
called Common. This program analyses an input text file and produces as
output a list of the different words found in the input, together with
their frequency of occurrence. Thus if there were 4 instances of the
word “Italic” in the input, Common would produce an output line of the
form: 4 of ‘Italic’. There would be only one instance of Italic in the
output. Common has the effect of suppressing repeated instances.
5.9
A program to produce the list of styles will have three stages con
trolled via an Obey file:
5.9
• Extract a list of styles using a pattern program similar to that for
extracting a list of first names, given in an earlier example.
5.9
• Run Common on the output from the previous stage in order to suppress
repeated or multiple instances of a style name.
5.9
• Clean up the output from Common using a second pattern program.
5.9
Take the problem of style names containing spaces. This is a problem not
for pattern programming but for Common. It is not possible to tell
Common what it should regard as a word separator. As a result, it will
treat “Main Heading” and “Sub-Heading” as four separate words.
5.9
The pattern programs must make up for this deficiency. They do this by
using the digraph and trigraph principle discussed earlier. The first
pattern program obtains its list of style names, possibly containing
repetitions. There will be one style name to each line. It then replaces
all cases of ‘ ’ each with the trigraph “XXX” and all cases of ‘’- each
with “YYY”. The second pattern program, in addition to cleaning up the
output from Common, also replaces the trigraphs with the original
symbols.
5.9
In the pattern programs that follow, “!80” and “!81” are used as special
markers in the manner already discussed. “/*” and “*/” are the standard
ANSI C comment markers.
5.9
Pattern Program 1:
5.9
“{”!80?0$!81“ ; /* isolate styles */
5.9
“%.” => ”!81?0!80“; /* begin & end */
5.9
“!81*.!80” => “”; /* delete unwanted */
5.9
“ ” => “XXX”;
5.9
“”- => “YYY”;
5.9
Sample Common Output:
5.9
Total number of different words: 4
5.9
8 of ‘SubYYYHeading’
5.9
4 of ‘indent’
5.9
2 of ‘NoXXXParagraphXXXSpace’
5.9
2 of ‘Author’
5.9
Pattern Program 2:
5.9
“*.$%.” => “?1”; /* remove summary */
5.9
“*.‘^@’$” => “?1$”; /* isolate styles */
5.9
“XXX” => “ ”;
5.9
“YYY” => “”-;
5.9
An opportunity to try the software
5.9
There is a simplified version of the compiler on the monthly program
disc. It includes some documentation. The compiler, though simplified,
should be of general use.
5.9
The Impression pattern programming example above will be supplied as a
utility to be installed on the icon bar. A
5.9
5.9
Friendly MS-DOS?
5.9
Robin Garrity
5.9
MS-DOS is a very unfriendly operating system, a fact which even
Microsoft seem to acknowledge. There are several ways to overcome its
inherent problems, such as learning DOS and being very patient, using
Windows and using DOS Shell.
5.9
This article will show how to simplify using DOS, virtually eliminating
the use of the command line and allowing applications to be started with
one keypress!
5.9
DOS
5.9
Learning a certain number of DOS commands is essential, unfortunately,
and is covered in many books. Unless the new PC Emulator manual is much
better than the present ones, buying a DOS book is a necessary evil but
there are much easier ways of getting the most out of your PC ...
5.9
Windows
5.9
Windows programs for the PC, either Microsoft’s Windows 3 or Quarter
deck’s DESQview, try to create a windowed multi-tasking environment not
unlike RISC-OS. Quarterdeck is very powerful and allows the use of
standard, single-tasking PC programs, but at a significant speed
penalty. Also, expanded memory is a requirement.
5.9
Of the two, Windows 3 (now 3.1 with 1¼ million advanced orders!) is the
most popular alternative and works under the present PC Emulator (1.6/
7), in EGA+ mode, even though it usually requires a VGA adapter. It is,
however, painfully slow even on a genuine 80386 machine and needs
specially written software to benefit from the features which we, as
Archimedeans, take for granted (RAM to RAM transfer, shared printer
drivers and scalable fonts). Its biggest disadvantage, however, is that
it needs huge amounts of disc space, typically 7M just for the Windows
system alone before you try and use any applications! Since most
Archimedes users will be operating with a software emulator and a hard-
disc partition or floppy disc, this, together with the cost and
incredible slowness of the display, make this an unrealistic option. By
far the cheapest and simplest solution is to use a DOS shell.
5.9
(There seems to be a problem getting Windows 3.1 working on current
emulators. Anyone succeeded? Laurence Brightman says that it needs a
’286 emulation with extended memory or a ’386 emulation. He also says
that TrueType scalable fonts are included in Windows 3.1 and that it now
occupies 10M of disc space! Ed)
5.9
DOS Shell
5.9
A DOS shell is a front-end which allows easy access to DOS programs and
usually provides most DOS commands via menus along with a host of disc
and memory utilities. Both MS-DOS and DR-DOS have shells included in the
later versions, so if you have them (versions 5 or 6 respectively), read
the instructions and configure your machine appropriately − it is worth
the effort. There are two major commercial packages available, however,
which combine the features of a DOS shell, a desktop and numerous
powerful utilities: X-Tree Professional and PC Tools. I am reasonably
familiar with both packages and both are capable of broadly the same
functions. I use PC Tools daily, so I shall use this as an example to
illustrate the advantages of using a shell.
5.9
PC Tools
5.9
The latest PC Tools version is 7 (for MS Windows), but the version I use
is 5.5 (6 is similar, but I still prefer 5.5). Create a sub-directory
(essential for all PC software because of the huge number of files
contained in most programs) called PCTools and follow the installation
instructions in the manual. The program is now ready.
5.9
At the C:\> prompt, type
5.9
cd c:\pctools
5.9
pcshell
5.9
(If you only have a floppy based system, put the disc in drive A:\> and
type pcshell.)
5.9
A screen will appear, much like the one shown opposite, with the
contents of either your hard-disc root directory or the floppy in drive
a: as appropriate. If the directory readout is different from what you
know is there, use the “Options − Re-read the tree” menu option to show
PC Tools your up-dated directories. By playing with it (my way), or by
reading the manual (the sensible way), you can find your way around the
large number of facilities available to you, e.g. disc compression and
backup, formatting discs, copying selected files, directory maintenance,
etc, etc, but a little bit more configuration will allow you to save
much effort later.
5.9
Use the Text Editor in PC Tools to edit your autoexec.bat file (if you
don’t understand what this does, check in the PC Emulator manual or in a
DOS book as it is very important to the efficient running of a PC!) to
add the following lines:
5.9
cd c:\pctools
5.9
pcshell
5.9
When you re-boot your system, you will now see the PC Tools DOS shell on
the screen rather than the stark DOS prompt. You can now use the shell
to run any program, on floppy or hard disc, in one of two ways. To run a
rarely used hard-disc program, or a floppy disc program, select the
appropriate run file (the one with the same name as you are used to
typing at the DOS prompt plus the .exe, .bat or .com extension) and
press <ctrl-enter>. After a confirmatory dialogue box, the PC Tools
screen will disappear and the program will run in exactly the same way
as normal. When you’re finished, exit your program in the normal way and
you are returned to PC Tools, not to DOS! The more you use this, the
more useful you will see that it is. There’s more ...
5.9
Hard disc users can use the “Options − Modify Applications List” option
to add as many programs as you have on your hard disc to a list which
pops up automatically when you start up, thus reducing the starting of
DOS applications to one, user definable, keypress! There’s more ...
5.9
As mentioned earlier, DOS programs tend to have an awful lot more files
than you actually need so, after backing-up the originals, selectively
delete the files you don’t need using the standard filing facilities in
PC Tools. Which ones are they? Well, you have to make intelligent
guesses much of the time but large numbers of printer drivers are
superfluous, as are the different VDU drivers. Tutorial files and
spelling checkers/thesauri (use the Archimedes ones!) can come off and
you’d be amazed at how much disc space you gain. Now use PC Tools’ disc
compression and read at the bottom of the screen how much free space you
have. To give you an illustration, On my 10M partition, I am running the
following software with no problems:
5.9
MS-DOS 5
5.9
PC Tools 5.5
5.9
SuperCalc 5
5.9
DBase IV 1.1
5.9
Autoroute 2.1
5.9
WordPerfect 5.1
5.9
DBase IV usually needs 4M, WordPerfect 3.5M and SuperCalc 5 nearly 2M
etc, so you can see the advantages to be gained by judicious deletion of
files. OK, I haven’t got a lot of space left for data, but what are
floppies for?! A
5.9
5.9
Insight
5.9
Peter Thomson
5.9
Insight consists of two programs, one designed to handle analogue
measurement and one designed to handle digital measurement in the school
science laboratory. It includes a set of pupil workcards, a user guide
and a teacher’s guide. It is produced by a team based at Leicester
University School of Education and published by Longman Logotron. The
price is £69 +VAT.
5.9
The review version is 1.05 and was tested on A5000, A3000 and A310
computers.
5.9
A range of probes were used with the analogue ports from HCCS, Morley
and Acorn. LogIT was used with the serial port.
5.9
Sensors
5.9
Insight will only work with a range of sensors from SenseIT , S&C ,
LogIT and Philip Harris. There are no options for the user to set up
other interfaces, but if SenseIT is selected as the interface, any
analogue probe using the analogue interface such as Measure-IT can be
used. SenseIT requires the computer to be enhanced with an analogue
port. The others require a working serial port. S&C and LogIT sensors
are identified automatically when the interface is selected as is the
Philip Harris interface.
5.9
Measurements taken from the analogue port are always real-time, but this
can continue as a background task while other desktop programs are in
use. LogIT connected through the serial port can also operate in real
time mode or it can be programmed with instructions from Insight,
disconnected from the computer and operated in remote mode and then the
results uploaded at a later time.
5.9
Analogue measurement
5.9
The interface and the font to be used for display are selected from a
menu on the icon bar. Other options are selected from standard RISC-OS
menus or from a control panel window.
5.9
Up to four channels of analogue measurement can be recorded at any one
time (three when using LogIT). All four channels are sampled at the same
rate and for the same time period. The maximum sample rate of 10 per
second is only allowed for periods up to one minute. 2 minutes will only
sample at 5 per second. This gives a maximum data store of 600 readings
per channel for some time intervals but it is 720 for others.
5.9
Sensors which are recognised by the system automatically use calibration
and display units predetermined by the software. This works well for
those sensors which are recognised but only a limited range is covered.
There is no facility for the user to add new sensors to the list.
5.9
Unrecognised sensors can be calibrated between two points. For example,
a temperature sensor would be connected to the interface with the
calibration option selected from Insight. The sensor would be placed in
boiling water and the value 100 entered from the keyboard. This would be
specified as the high fixed point. The sensor would then be placed in
melting ice and the value 0 entered at the keyboard, specified as the
low fixed point. The calibration assumes a straight line relationship
between the two fixed points. The calibrated values are then used in the
display. Up to four sensors can be calibrated at one time. If the data
is then saved this can be used as a set-up file to avoid the need to
recalibrate the sensors each time they are used. Calibration data cannot
be swapped between files and sensors cannot be moved to different
channels without recalibration.
5.9
Remote operation
5.9
LogIT was well supported in immediate mode but it was not easy to use in
remote mode.
5.9
LogIT comes with its own software which is very effective and simple to
use and worked on all the computers tested. Insight programmes the LogIT
module in a different way which is not compatible. Insight programming
was only straightforward if the LogIT unit was reset first, one series
of measurements taken to completion and the result uploaded. The LogIT
unit had to be reset and reprogrammed before the next set of readings
were taken. If the results were uploaded before the planned time had
elapsed, the missing results were uploaded and displayed although
garbage. Logotron are aware of this problem and expect to have it cured
on the next version. LogIT worked with its own software on the A5000
computer with no problems. I could not get Insight to program LogIT
remote on the A5000 although it worked on the 310
5.9
Display
5.9
Each display appears in a window. If the window is resized then the
display is altered to fit the new window size.
5.9
The main display is a line graph. The horizontal axis can display clock
time, elapsed time, or one of the four channels can be selected. Each
channel is plotted on its own vertical scale.
5.9
One scale can be displayed to the left of the graph and a second can be
displayed to the right of the graph. The scales used can be selected by
the user but the values marked on the scale are calculated by the
program to give ‘sensible’ values. A range of 0 to 28 results in a scale
marked off in units of 5. A scale of 0 to 1061 is marked off in units of
200. If the range selected for display is less than the full range of
measurements in the experiment then the value outside the range is
plotted at the top or bottom of the graph. There is no option to change
the scale used for display while an experiment is being recorded. There
is no option to display grid lines on the graph, and there is no option
to change the grey background to the display although this can be
changed by altering the palette on the icon bar. The plotted lines can
be thin or thick to improve their visibility to a class.
5.9
The numerical values being logged are displayed on the control bar.
These values are updated every second if time intervals are shorter than
one second. There is an option to display these values as large digits
on screen, this works well on the A3000, but with a maximum size of
1.5cm on the A5000 normal monitor I thought these were a bit small. The
values can also be displayed as a vertical bar chart.
5.9
After the sequence of readings is complete there is an option to zoom in
on a particular part of the graph. This has a maximum of 20× but there
is no indication of how far you have zoomed, and trying to pick a
smaller area of graph for display results in an error message rather
than giving you the maximum zoom. Zooming in on a graph that is close to
the limits of the range of plotted values produces lines which overlap
the axes labels at the base of the graph. A graph with a span of 0 to
100 seems to be incorrectly plotted between 0 and 1. In the analysis
section, the cursor lines do not match the graph lines in this area.
5.9
Printing out the graph is straight forward, using RISC-OS printer
drivers, but the quality of the graph lines is poor as it is a dump of
the graph as a sprite. A much better printout can be produced by
transfer of the data in CSV format to Pipedream 4 or GraphBox.
5.9
Analysis
5.9
The Analyse menu provides a number of useful options for data handling.
It acts on the data displayed on the graph with numerical values being
displayed in a small window. The number of decimal places to be
displayed can be selected by the user.
5.9
The calibrated X and Y values of any data item or the time interval
located by the cursor can be displayed.
5.9
The gradient of any data line can be displayed. The default time
interval is 0.8s and this is easily changed in a settings menu.
5.9
The difference in value or the ratio of values between any two points on
the same line can be displayed, but not between different probes. The
ratio can be Y1/Y2 or Y2/Y1.
5.9
The area underneath the plotted lines of data can also be displayed
between any two points.
5.9
The Data menu provides the facility to display graphs based on the
application of a function to the recorded data. Up to four such graphs
can be displayed at any one time in addition to the four data graphs.
5.9
Processing can take the form of simple operations such as A-B or A*B or
more complex formulae.
5.9
Predefined functions are Average and Trial fit. Average calculates a new
value from ten adjacent old values. Trial Fit allows three options,
straight line, power function or exponential. Further curve generating
functions can be developed by selecting from a series of generalised
functions on a menu and modifying them to suit your own requirements.
5.9
Saving a data file
5.9
Saving a data file in Insight’s own format stores all the details of
probes, calibrations and processing. Saving in CSV format saves only the
processed data. Only data saved in Insight’s own format can be reloaded
into Insight. This means that the graph analysis of Insight cannot be
used on data from other sources.
5.9
Digital
5.9
This is a separate program with no links to analogue data. It handles
two digital inputs only. When configured as ‘SenseIT’, it uses the two
digital lines that connect the “fire” buttons on the analogue port.
Otherwise it can only use LogIT and SAC interfaces.
5.9
The range of possible measurements is very limited. The length of an on
pulse from A, the length of an on pulse from B and the time between A
switching on and B switching on. These can be combined in a sequence so
that a slotted card passing a light gate will produce a sequence of
measurements. The number and length of slots in a card can be entered
from the keyboard, as can the mass of a trolley carrying the card and
the distance from gate A to gate B. The software can use these values
with the recorded data to display time, speed, velocity, acceleration,
momentum and kinetic energy. The formula used to produce these calcu
lated values can also be displayed. These are all displayed with
appropriate units.
5.9
The results of these measurements are displayed in a table with the
facility to process this data with simple formulae in adjacent columns.
Totals and averages are two functions provided. Other simple formulae
can be constructed by the user. New columns cannot be added after the
data has been collected and average and total functions will only work
on the column to the immediate left.
5.9
The data can also be displayed as a graph. e.g. velocity / time, but the
graph display does not offer all the options available on the analogue
program and they are not as well implemented. It seems strange that this
package should have two different graph drawing routines.
5.9
The recorded data can be displayed as a bar chart but this cannot be
printed. The user guide suggests that the graph will print out but this
did not appear as an option on the menu of the review version. Only the
table of values can be printed.
5.9
There is no facility to count pulses such as those from a Geiger unit or
other pulse sensors.
5.9
I found this section very limited and a very complicated way of using
simple time gates.
5.9
Guides and work cards
5.9
The package comes with a teacher’s guide, a user guide and a set of
pupil work cards. The user guide starts with a very simple and clear
explanation of the mouse and windows for first time users of the
Archimedes. There is a good menu by menu explanation of how the analogue
section works but I think that more explanation of the data analysis
section is needed, particularly on the construction of formulae for data
analysis. The digital section also has a menu by menu explanation, but
it requires more illustration of appropriate choices and again the use
of formulae to analyse data needs to be explained.
5.9
The teacher’s guide provides an excellent summary of the use of computer
based measurement in the school science laboratory.
5.9
The work cards are well presented on A4 laminated card. The twenty
experiments cover a wide range of ideas all suitable for science lessons
for 11 to 16 year olds. Each one covers the problem to be investigated,
questions that guide the pupil toward a solution, suggestions for the
appropriate probes and time intervals, questions to guide discussion
after the experiment is complete and suggestions for further
investigation.
5.9
Conclusion
5.9
Insight version 1.03 has some ragged edges. I particularly disliked
windows with scroll bars that don’t scroll and the unfriendly zoom on
the graph. The Analogue program is more polished than the Digital
program but it would be more useful if data from other sources could be
loaded and processed. The printout of both could be better. It would be
a big improvement if a program like this provided hot links to spread
sheets and graph drawing programs.
5.9
The links to LogIT also need to be improved to match the ease of use of
LogIT’s own software. Although the latter has only limited facilities
for analysis and printing, a new version is due for release early in
1992 and a review should follow shortly after.
5.9
Logotron are aware of these problems and hope to release a new version
soon to overcome them.
5.9
Insight has a lot of good points, particularly with its facilities for
data analysis and its guides and workcards.
5.9
Its main advantages are in the facilities available for data analysis
and that it is fully multitasking so that measurements can continue
while the computer is used for other tasks.
5.9
Insight is suitable for both GCSE and A level science work. A
5.9
5.9
Design Concept’s Fonts and Programs
5.9
Steve Hayes
5.9
Design Concept’s programs and fonts were originally reviewed in Archive
4.8 p52 by Robert Christmas. Since then, Design Concept have improved
some of its fonts and programs and also created quite a few more. What
follows is an overview of Design Concept’s products and a review of the
additions and improvements.
5.9
Design Concept fonts
5.9
The fonts supplied by Design Concept are contained in a !MoreFonts
directory which, when clicked on, allows the fonts on the disc to be
‘added’ to the fontlist as selected in your normal !Fonts directory.
This is quite a useful feature and allows non-harddisc users a simple
method of accessing many fonts − more than one disc worth! Contained
within the !MoreFonts directory is an obey file called !OnlyHere which,
if run, selects only the fonts within the !MoreFonts directory to be in
the fontlist. The fonts are very reasonably priced at £2.50 for any one
font and £1.00 for additional fonts of the same family.
5.9
Almost all of the fonts have lots of skeleton lines and Scaffolding
(hinting). This improves the appearance of the letters especially at
small point sizes. The exception to this is Copperplate Bold and
DemiBold which appear to have little. I suspect that this may be because
the font is still under development − this subgroup do not appear in
Design Concept brochure. Interestingly, these two fonts printed out a
little smaller than the actual point size yet looked very good at 300
d.p.i. All the Design Concept fonts have excellent appearance when in
print and, even at smaller point sizes, the definition is good. Some of
the earlier fonts which Design Concept made have been added to and
improved. This, in some instances, is a subtle addition such as
characters 146 and 147. The full font sets is as follows:−
5.9
Acropolis (regular), Ainslie (regular, bold, oblique, bold oblique),
Beacon (regular, oblique), Celtic (regular), Copperplate (regular, bold,
demibold), Diamond (regular), Flip (regular), Goffik (regular), Hobart
(regular, oblique), Katiyo (regular, oblique), Khut (regular, oblique),
LCD (regular, oblique), Sparta (regular, oblique), Subway (regular),
Tron (regular, oblique), and Trust (regular, oblique, solid, solid
oblique).
5.9
The fonts are not PostScript compatible, although I suspect that many
Archimedes owners would not be affected by this. Some of the fonts could
be described as exotic, although I feel many of the fonts could be put
to many practical uses. The script fonts Copperplate, Ainslie and Flip
look particularly attractive. A small sample from several of the font
groups is shown overleaf.
5.9
All in all, I feel the Design Concept fonts are a very good buy for
anyone wishing to increase their font collection cheaply whilst
maintaining more than reasonable quality. My only criticism is the
problem with Copperplate mentioned above.
5.9
Design Concept software
5.9
The software which Design Concept sells consists mainly of utilities
which in some way will make our life at the keyboard / mouse easier.
5.9
Fontlist (Version 1.11) (£3) is a program for listing, in a drawfile,
all available fonts. It is quite useful for reference and for printing.
The point size can also be altered. I liked this utility.
5.9
Freehand (Version 1.24) (£5) allows you to create freehand drawings
easily and then save them as drawfiles. Various options determine the
mouse speed or thick/thin line preference. I found this easy to use
although practice was needed to produce a satisfactory drawing.
5.9
KeyCaps (Version 2.03) (£4) is a program which allows you to see what
your available fonts look like on screen in optional point sizes. This
was my favourite utility. I found it easy to use and liked the ease with
which I could quickly compare different fonts.
5.9
Killer (version 2.01) (£4) allows you to Kill(!) any program, appli
cation or window, i.e. to stop them running. It can even kill your disc
drive icons or the task manager! On the safer side, it allows you to
have complete control over any window whether or not the window controls
are on screen. This is quite a powerful utility but must be used with
care.
5.9
Muncher (£2) This program opens a window and draws a constantly changing
pattern. The utility works by drawing one part of its continually
changing pattern at every opportunity. If your programs are truly
multitasking, muncher should operate smoothly. It also helps to tie up
the computer and therefore slow other programs down if needed. I was not
overawed by this utility although I can see its uses.
5.9
Shade (version 1.31) (£4) This program allows gradient fills for Draw
files of up to 256 shades between two colours. This program has been
improved to allow easier colour selection. Unless your printer has
colour, grey shading is all you will be able to see.
5.9
Speedo (£2) This little program allows you to test the speed of
multitasking. It is designed to show up badly written software and its
inefficiency. The polling speed is shown in Hertz.
5.9
Back (Version 1.68) (£5) This is a more substantial offering. It has a
facility to display a sprite picture in the background on the screen
but, more usefully, it allows, with some setting up, various facilities
such as screen blanking and a menu on the background for running
applications or executing commands. It consists of a program
(!Buildback) to create the background menu you prefer and the main !Back
program.
5.9
Conclusion
5.9
I feel the software is good but with a few reservations. One is that a
large amount of PD and Shareware has been written for the Archimedes and
some of it is as good as and better than some of the applications here.
I wonder whether Design Concept would be better off releasing the
software in a similar manner to the Data Store utility discs, where, for
a set amount, you get all of the utilities rather than charge for small
individual offerings. I wouldn’t normally pay for small programs of this
size unless I was absolutely sure they were what I wanted. I can’t help
feeling that I wouldn’t know this unless I tried some of them out before
I bought them. This comment should not detract from the fact that the
programs are useful and are worth buying should they be what you
need. A
5.9
5.9
5.9
5.9
The “screensaved” picture above shows the negative and the inverted
“altered” image.
5.9
5.9
The photo above was made from a typical 6 × 6 negative.
5.9
5.9
Roger Spooner of Design Concept says that all the fonts are now fully
skeletoned and some have scaffold lines. Copperplate has been upgraded
and the sizes are now corrected and even. Ed.
5.9